Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z regularnym pokazywaniem i zamykaniem elementu
Forum PHP.pl > Forum > Po stronie przeglądarki
blackstone
Zrobiłem sobie funkcje JQUERY (kod poniżej) której zadaniem jest pokazywanie lub ukrywanie danego elementu html. Wszystko działa dobrze dopuki nie chodzi o zamknięcie elementu podrzędnego względem tego elementu w ramach którego on się znajduje (rodzica). Sytuacja jest kodzie poniżej. Element o id #boxmenu (rodzic)wywołuje (na wskutek kliknięcia) funkcje która zmienia css podrzędnego elementu o id #tlopanel tak by element sie pokazywał. Gdy jednak chce kliknąć w podrzędny element (#tlopanel) który wywołuje tę samą funkcję tylko w trybie "zamknięcia" widoku ( i chodzi o niepokazywanie samego siebie a nie elementu nadrzędnego czy innego) to wówczas nadal on jest widoczny. Jak to obejść by klikając w element podrzędny (#tlopanel) móc go zamknąć z poziomu jego samego ?

Kod funkcji

  1. function display(target,set)
  2. {
  3.  
  4. let take = $(target) ;
  5.  
  6. if(set == 1)
  7. {
  8. take.css({'display' : 'block'})
  9. }
  10. else
  11. {
  12. take.css({'display' : 'none'})
  13. }
  14.  
  15.  
  16. }


Kod elementów html :

  1. <div id="boxmenu" onclick="display('#tlopanel',1)" class="topbox">TŁO <div id="tlopanel" onclick="display('#tlopanel',0)" class="show_off" >Panel</div>"</div>
viking
Pokaż pełen przykład z kilkoma elementami docelowymi które ta funkcja ma pokazywać/ukrywać.
blackstone
  1. <div id="boxmenu" onclick="display('#tlopanel',1)" class="topbox">TŁO <div id="tlopanel" onclick="display('#tlopanel',0)" class="show_off" >Panel</div></div>



^ ^ ^
1 ) Klikam w w div #boxmenu w wyniku czego pokazuje mi się div #tlopanel - czyli działa ok
2) Klikam w pokazany w pkt 1 div #tlopanel w wyniku czego powinien się on zamknąć ale nadal go widać- i tutaj problem jest.

* W innych konfiguracjach funkcja działa dobrze, problem pojawia sie właśnie w tej.

* Na razie jest to jedyna para elementów w całym kodzie, ale docelowo takich par ma być więcej.
viking
Pytam o strukturę bo to by umożliwiło napisanie coś sensownego.

https://jsfiddle.net/69z0qweu/
trueblue
https://jsfiddle.net/nakopwue/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.