• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Popup znikający po kliknięciu poza modal.

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
1,325 wizyt
pytanie zadane 17 lipca 2018 w JavaScript przez tatar Użytkownik (740 p.)

Dzień dobry,

potrzebowałabym pomocy w jednej kwestii. Zrobiłam Popup, który można zamknąć po kliknięciu w "X" oraz napis "Zamknij". Dodatkowo podczas wejścia w popup znika scrollowanie strony głównej. Niestety nie potrafię dodać do kodu możliwości zamknięcia okna popup po naciśnięciu gdzieś poza niego. Udało się jedynie, że znika, jeśli naciśniemy gdziekolwiek, nawet w okno popup, czego bym nie chciała.

Proszę o pomoc:

HTML

	<a class="open_pop">otworz</a>	

<div class="hover_pop">
			<span class="helper"></span>
				<div class="modal-content" style="overflow-y: initial !important">
					<div class="modal-header" style="border-bottom:1px solid #E5E5E5;">
						<div class="popupCloseButton">X</div>
						<h2>TYTUŁ</h2>
					</div>
					<div class="modal-body" style="overflow-y: scroll; max-height:86%;  margin-top: 10px; margin-bottom: 0px;">
						<p>TREŚĆ</p>
					</div>
					<div class="modal-bottom" style="border-top:1px solid #E5E5E5;position: relative;">
						<div class="popupCloseButton2">Zamknij</div>
					</div>
				</div>
		</div>

JQuery

$(document).ready(function () {

    $(".open_pop").click(function(){
       $('.hover_pop').show();
    });
    $('.popupCloseButton').click(function(){
        $('.hover_pop').hide();
    });

// hide body scroll
    $(".open_pop").click(function(){
       $('body').css('overflow','hidden');
    });

    $('.popupCloseButton').click(function(){
        $('body').css('overflow','auto');
    });
    $('.popupCloseButton2').click(function(){
        $('body').css('overflow','auto');
    });
})

Pozdrawiam, Ala

2 odpowiedzi

0 głosów
odpowiedź 17 lipca 2018 przez niezalogowany
Div na całą szerokość i wysokość o z-index mniejszym od popupa i większym od strony z eventem  zamykakącym ;)
komentarz 17 lipca 2018 przez tatar Użytkownik (740 p.)

Nie rozumiem za bardzo jak to zrobić o czym piszesz.

Próbowałam w ten sposób:

var modal = document.getElementById('ID');

window.onclick = function(event) {
    if (event.target == modal) {
        modal.style.display = "none";
    }
}

Niby działa, ale przez to, że nadałam wcześniej brak scrollowania strony to po wyłączeniu popup scroll już w ogóle na stronie głównej się nie pojawia cool

komentarz 20 lipca 2018 przez Storkeus Obywatel (1,120 p.)

Oprócz ukrycia modala włącz jeszcze scrolla

$('body').css('overflow','auto');

to powinien wtedy się pojawiać.

btw. wydaje mi się, że zamiast edytować style css bezpośrednio w skrypcie js lepiej jest utworzyć osobną klasę w arkuszu stylów i nadawać ją w skrypcie odpowiednim elementom.

 

0 głosów
odpowiedź 20 lipca 2018 przez tatar Użytkownik (740 p.)

Podbijam, może ktoś jeszcze wpadnie na jakiś pomysł surprisefrown

Podobne pytania

0 głosów
1 odpowiedź 263 wizyt
pytanie zadane 12 marca 2019 w JavaScript przez tatar Użytkownik (740 p.)
0 głosów
1 odpowiedź 191 wizyt
pytanie zadane 29 marca 2021 w HTML i CSS przez Nearr Obywatel (1,890 p.)
0 głosów
0 odpowiedzi 779 wizyt

93,187 zapytań

142,203 odpowiedzi

322,023 komentarzy

62,515 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2581p. - dia-Chann
  2. 2537p. - Łukasz Piwowar
  3. 2528p. - Łukasz Eckert
  4. 2514p. - CC PL
  5. 2476p. - Tomasz Bielak
  6. 2445p. - Łukasz Siedlecki
  7. 2443p. - rucin93
  8. 2201p. - Michal Drewniak
  9. 2156p. - Marcin Putra
  10. 2152p. - Adrian Wieprzkowicz
  11. 2105p. - Mikbac
  12. 1941p. - Anonim 3619784
  13. 1733p. - rafalszastok
  14. 1701p. - Michał Telesz
  15. 1580p. - ssynowiec
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...