Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS][JavaScript] zmiana "style.display" dopiero po 2-gim kliknięciu, zmiana css display za pomocą JavaScript
hiszpanespaniol
post 17.05.2008, 17:33:37
Post #1





Grupa: Zarejestrowani
Postów: 213
Pomógł: 39
Dołączył: 7.04.2008
Skąd: 3city

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


witam.
Znalazłem tu na forum link do strony z przykładem tworzenia "zakładek menu" za pomocą css i JavaScript'u (niestety nie mogę odszukać tamtego tematu).

Funkcję chciałem uprościć tak, aby jeden link ukrywał lub odkrywał pewien div. Wszystko mi działa, ale dopiero gdy drugi raz kliknę w link ukrywający/odkrywający. Ma "palić na dotyk" a nie "z popychu" smile.gif

tak wygląda funkcja java script:

  1. function pokaz(tekst) {
  2. stan = document.getElementById(tekst).style.display;
  3. if (stan == 'block' || stan == '') {
  4. document.getElementById(tekst).style.display = "none";
  5. } else {
  6. document.getElementById(tekst).style.display = "block";
  7. }


a tak obrazowo wygląda HTML:

  1. <style type="text/css">
  2. #opis: {display: none}
  3. <div>
  4. Krótki opis paragrafu. <a href="javascript:void(pokaz('opis'))">Czytaj więcej</a>
  5. <div id="opis">obszerny opis tego paragrafu <a href="javascript:void(pokaz('opis'))">zwiń</a>
  6. </div>
  7. </div>


Byłbym wdzięczny za pomoc (naprowadzenie na rozwiązanie działające za 1-szym kliknięciem)

ps. funkcja znajduje się w <body> a nie w <head> jeśli to ma znaczenie. Head jest "incudowane" (PHP) przy każdej stronie, a ta funkcja potrzebna tylko w jednej podstronie, dlatego w includowanym <body>

Ten post edytował hiszpanespaniol 17.05.2008, 17:37:23


--------------------
Go to the top of the page
+Quote Post
PiXel2.0
post 17.05.2008, 17:50:38
Post #2





Grupa: Zarejestrowani
Postów: 110
Pomógł: 13
Dołączył: 16.03.2007
Skąd: Łódź

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


A sprawdz czy z taka funkcja dziala ?

  1. function pokaz(tekst){
  2. var element = document.getElementById(tekst);
  3. if(element.style.display == 'block')
  4. element.style.display = 'none';
  5. else
  6. element.style.display = 'block';
  7. }


Moze przyda Ci sie jeszcze TEN TEMAT winksmiley.jpg
Go to the top of the page
+Quote Post
hiszpanespaniol
post 17.05.2008, 18:01:06
Post #3





Grupa: Zarejestrowani
Postów: 213
Pomógł: 39
Dołączył: 7.04.2008
Skąd: 3city

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


działa, dziękuję.
Ale różnica między tymi dwiema wersjami ("moją" i Twoją) jest bardzo niewielka i nie wiem czemu mi nie działało. w każdym razie "pomógł"


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 26.04.2025 - 03:37