Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Podmiana wartości onclick, po kliknięciu
mike
post
Post #1





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Witam, mam następującą sytuację (trochę to zagmatwane (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ):
  1. {section name=Categories loop=$LINKS}
  2. <div id="category{$smarty.section.Categories.iteration}" class="news">
  3. <h1><a id="category{$LINKS[Categories].name}" href="#" onclick="new Effect.BlindDown( 'links{$smarty.section.Categories.iteration}' ); return false;">{$LINKS[Categories].name}</a></h1>
  4. <div id="links{$smarty.section.Categories.iteration}" onclick="new Effect.BlindUp( 'links{$smarty.section.Categories.iteration}' ); return false;" style="display: none;">
  5. {if $LINKS[Categories].links}
  6.  
  7. {assign var='LINKSLIST' value=$LINKS[Categories].links}
  8.  
  9. {section name=Links loop=$LINKSLIST}
  10. <a href="{$LINKSLIST[Links].path}">{$LINKSLIST[Links].name}</a> - {$LINKSLIST[Links].description}<br />
  11. {/section}
  12.  
  13. {else}
  14. Chwilowo <span class="error">brak linków</span> w tej kategorii.
  15. {/if}
  16. </div>
  17.  
  18. </div>
  19. {/section}


Wartośc atrybutu onclick dla linka znajdującego się wewnątrz h1 jest równa:
onclick="new Effect.BlindDown( 'links{$smarty.section.Categories.iteration}' ); return false;".
Chciałbym żeby po kliknięciu w niego wartośc zmieniła się na:
onclick="new Effect.BlindUp( 'links{$smarty.section.Categories.iteration}' ); return false;".

Ma to powodować że klikanie w jednego linka spowoduje raz pokazywanie diva, raz jego ukrywanie.

I odkryłem z przerażeniem, że moja wiedza o JavaScript nie wystarcza (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

No cuż trzeba wołać: Pomocy (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif) !
Go to the top of the page
+Quote Post
ikioloak
post
Post #2





Grupa: Zarejestrowani
Postów: 416
Pomógł: 0
Dołączył: 8.01.2004

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


Chyba to Cie powinno zainteresowac:
Traditional event registration model
A tutaj masz ze spisem tresci:)
http://www.quirksmode.org/js/
artow o eventach jest tam kilka.

Sam sie w to nie bawilem - to co wyzej to znalezione na google. Powodzenia zatem.

Ten post edytował ikioloak 15.11.2005, 00:01:19
Go to the top of the page
+Quote Post
Zajec
post
Post #3





Grupa: Zarejestrowani
Postów: 1 086
Pomógł: 8
Dołączył: 10.12.2003

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


Kod
onlick="twojadziwnafunkcja(); this.onclick=function() { twojafunkcjapokliknieciu(); }"


Ten post edytował Zajec 15.11.2005, 00:23:57
Go to the top of the page
+Quote Post
mike
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Niestety, to:
  1. <a href="#" onclick="new Effect.BlindDown( 'links{$smarty.section.Categories.iteration}' ); this.onclick=function() {ldelim} new Effect.BlindUp( 'links{$smarty.section.Categories.iteration}' ); return false; {rdelim}; return false; ">{$LINKS[Categories].name}</a>

co w rezultacie daje taki (przykładowy) wyniki:
  1. <a href="#" onclick="new Effect.BlindDown( 'links1' ); this.onclick=function() { new Effect.BlindUp( 'links1' ); return false; }; return false; ">php</a>


Nie dział poprawnie. Mogę teraz rozwinąć, zwinąć (zwinięcie działa bardzo ładnie), ale nie mogę ponownie rozwijać i dalej idąc, zwijać.

Sekwencję rozwiń/zwiń mogę wykonać tylko raz.

Czy macie pomysł jak rozwiązać ten problem :?:

Dzięki za pośwęcenie. 00:40 to nienajlepsza pora do myślnia (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Wczoraj ty mnie posądziłeś o przekombinowanie, dziś ja ci nie pozostanę dłużny (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

A po co robisz dwie funkcje: jedna na rozwiniecie, druga na zwinięcie ?
Daj jedną funkcję, która na podstawie tego, czy div jest ukryty, czy nie będzie go pokazywać lub ukrywac. To przecież nie problem i sam to stosuje od wieeeków (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
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: 21.12.2025 - 20:52