Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript][jQuery]
KID479
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 12.02.2015

Ostrzeżenie: (0%)
-----


Witam wszystkich,

Jestem tu nowy, a to jest mój pierwszy post. Zapoznałem się z przypiętymi tematami wiec mam nadzieje że nie popełniam tu żadnego błędu.
A teraz do rzeczy.
Mam na stronie cztery elementy typu class zamknięte w divie:
CODE
<div id="Przyciski">

<p class="Przycisk">Sporty Wodne</p>
<p class="Przycisk">Szkolenia</p>
<p class="Przycisk">Galeria</p>
<p class="Przycisk">Kontakt</p>

</div>

Po wciśnięciu na jeden z nich otwiera mi się okno z parametrami, które zdefiniowałem w CSS:
CODE
.WindowShow{
visibility: visible;
height: 400px;
width: 800px;
margin-left: 100px;
margin-top: 80px;
background-color: #fff;
position: absolute;
border: 8px groove;
opacity: 0.6;
}

Przyciski działają w oparciu o kod java script:
CODE
<script type="text/javascript">
$(document).ready(function(){

$("#Przyciski p").click(function(){
$(this).toggleClass("Click");
$("#Window").toggleClass("WindowShow");
});
});

</script>

(Klasa Click zmienia jedynie kolor tła użytego przycisku na biały).
Kod, który wstawiłem powyżej działa dotąd tak jak tego sobie życzyłem i chciałbym go teraz rozwinąć.
Jak zablokować możliwość wciśnięcia innego przycisku niż ten, którego użyliśmy kiedy okno jest otwarte?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
b4rt3kk
post
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Możesz sprawdzić czy element #Window jest widoczny, względnie czy posiada klasę WindowShow, jeśli tak to po prostu przerywasz dalsze wykonywanie poleceń w funkcji. Przykład:

  1. $(document).ready(function(){
  2.  
  3. $("#Przyciski p").click(function(){
  4. if ('#Window').is(":visible")) {
  5. return;
  6. }
  7.  
  8. $(this).toggleClass("Click");
  9. $("#Window").toggleClass("WindowShow");
  10. });
  11. });


Ten post edytował b4rt3kk 12.02.2015, 16:51:32
Go to the top of the page
+Quote Post
KID479
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 12.02.2015

Ostrzeżenie: (0%)
-----


W takiej postaci:
CODE
<script type="text/javascript">
$(document).ready(function(){

$("#Przyciski p").click(function(){
if ('#Window').is(":visible")) {
return;
}

$(this).toggleClass("Click");
$("#Window").toggleClass("WindowShow");
});
});
</script>

Okno w ogóle się nie otwiera. Zarówno przy opcji :visible jak i WindowShow.
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #4





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(KID479 @ 12.02.2015, 17:06:16 ) *
W takiej postaci:
CODE
<script type="text/javascript">
$(document).ready(function(){

$("#Przyciski p").click(function(){
if ('#Window').is(":visible")) {
return;
}

$(this).toggleClass("Click");
$("#Window").toggleClass("WindowShow");
});
});
</script>

Okno w ogóle się nie otwiera. Zarówno przy opcji :visible jak i WindowShow.


Bo skopiowałeś żywcem kod, a tak się składa, że błąd walnąłem i nawiasu brakuje w warunku, popraw u siebie. Powinieneś mieć jakieś narzędzie do debugowania, np. Firebuga.
Go to the top of the page
+Quote Post
KID479
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 12.02.2015

Ostrzeżenie: (0%)
-----


CODE
<script type="text/javascript">
$(document).ready(function(){

$("#Przyciski p").click(function(){
if (('#Window').is(":visible")) {
return;
}

$(this).toggleClass("Click");
$("#Window").toggleClass("WindowShow");
});
});
</script>

Tak powinno być?
Go to the top of the page
+Quote Post
b4rt3kk
post
Post #6





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Coś w tym stylu. Ale to sam już powinieneś wiedzieć, o ile sprawdziłeś czy działa.

Powinno być jeszcze porównanie !== false

Tak jak mówiłem, to tylko przykład.

Ten post edytował b4rt3kk 12.02.2015, 21:42:12
Go to the top of the page
+Quote Post
KID479
post
Post #7





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 12.02.2015

Ostrzeżenie: (0%)
-----


Napisałem w "Przedszkole" bo taki jest mój poziom programowania. Moja wiedza ogranicza się do html i css. Domyślam że ciężko jest doradzać tak zielonym jak ja w tym temacie ale właśnie ze względu na poziom jaki reprezentuje się tu zgłosiłem. Mógłbyś mi jeszcze raz przedstawić jak to powinno wyglądać? Najlepiej ze słowem wyjaśnienia (IMG:style_emoticons/default/wink.gif) W tej chwili mam taki oto błąd, który pojawia się w linijce ,w której znajduje się if:
Cytat
Uncaught TypeError: undefined is not a function


Koncepcja uległa zmianie. Temat można usunąć

Ten post edytował KID479 12.02.2015, 22:07:11
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 19:22