Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript] odslanianie litera po literze
xix
post
Post #1





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 14.11.2008

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


Staram sie zrobic krotki javascripcik, ktory odslanialby jakac tresc (np. foo bar) po kliknieciu w klawisz enter na linku. wygladaloby to tak:

Domyslny wyglad zaraz po uruchomieniu strony (tresc foo bar calkowicie zaslonieta, niewidoczne nawet kreski zaslaniajace)
1. link:

i kolejne klikniecia entera na linku powoduja:
2. link: -------
3. link: f------
4. link: fo-----
...
9. link: foo bar

Skrypt kompletnie nic nie robi w tej chwili (nic nie zniknelo i zadne kreski sie nie pojawily) i nie wiem czemu
  1. <script language="javascript">
  2. window.onload=wyswietl;
  3. var zmienna=document.getElementByID('odslon');
  4. function wyswietl()
  5. {
  6. zmienna.innerHTML="";
  7. }
  8. function klawisz()
  9. {
  10. if(event.keyCode==13)
  11. {
  12. document.write(zmienna.replace(/"+"/g,"-"));
  13. }
  14. }
  15. </script>
  16.  
  17. <a href="java script:void(0)" onkeypress="klawisz()">link</a> <div id="odslon"><?php echo $zmienna_z_trescia ?></div>


Ten post edytował xix 27.08.2010, 19:28:44
Go to the top of the page
+Quote Post
bastard13
post
Post #2





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


Powinno zadziałać:
  1. var ab_count=0;
  2. var word='moj tekst do wyswietlenia';
  3. var ab_array_with_word=word.split('');
  4.  
  5. function showIt(event)
  6. {
  7. event=(window.event ? window.event : event);
  8. if(event.keyCode==13)
  9. { document.getElementById('el_with_js').innerHTML=document.getElementById('el_with_js').innerHTML+ab_array_with_word[ab_count];
  10. ab_count++;
  11. }
  12.  
  13. }
  14.  
  15. <a href="#" id="el_with_js" onkeypress="showIt(event);">link</a>
  16.  

Oprócz tego tutaj masz parę stron z info nt. zdarzeń js:
http://www.w3schools.com/js/js_events.asp
http://webmade.org/porady/zdarzenia-events-js-javascript.php
http://www.quirksmode.org/js/events_properties.html
https://developer.mozilla.org/en/DOM/event.keyCode
http://www.asquare.net/javascript/tests/KeyCode.html


--------------------
Go to the top of the page
+Quote Post
xix
post
Post #3





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 14.11.2008

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


skrypt mi nie dzialal, ale juz chodzi. uff...
to byl moj blad.

jeszcze musze tam wtrynic (zamiast 'moj tekst do wyswietlenia') $zmienna php, bo tekst jest w zmiennej. jest na to jakies wyjscie?

Ten post edytował xix 27.08.2010, 22:25:20
Go to the top of the page
+Quote Post
bastard13
post
Post #4





Grupa: Zarejestrowani
Postów: 664
Pomógł: 169
Dołączył: 8.01.2010
Skąd: Kraków

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


  1. var word='<?php echo $zmienna; ?>';


--------------------
Go to the top of the page
+Quote Post
xix
post
Post #5





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 14.11.2008

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


niestety tak wyswietlony zostanie dokladnie tekst:
<?php echo$zmienna; ?>
zamiast ukryty w tekst w zmiennej $zmienna:
'moj tekst do wyswietlenia'
Go to the top of the page
+Quote Post
zegarek84
post
Post #6





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


Cytat(xix @ 28.08.2010, 06:02:20 ) *
niestety tak wyswietlony zostanie dokladnie tekst:
<?php echo$zmienna; ?>
poczytaj o łączeniu kodu html z php...
niżej działający kod - treść nie trzeba przypisywać do zmiennej - masz tak jak w swoim pierwszym przykładzie który podałeś...
  1. <head>
  2. <title>Timer</title>
  3. <script type="text/javascript">
  4. function ini(){
  5. var $zm={};
  6. $zm['link']=document.getElementById('odslon');
  7. $zm['div']=document.getElementById('odsloniane').firstChild;
  8. $zm['text']=new String($zm.div.nodeValue);
  9. $zm['new_text']=new String('');
  10. $zm['znak']=0;
  11. $zm.div.nodeValue='';
  12. $zm.link.onclick=function(){return false;};
  13.  
  14. function showNext(e)
  15. {
  16. var litera=$zm.text.charAt($zm.znak),
  17. e=window.event ? window.event : e;
  18. if(e.keyCode==13 && litera!=='')
  19. {
  20. $zm.new_text=[$zm.new_text,litera].join('');
  21. $zm.div.nodeValue=$zm.new_text;
  22. ++$zm.znak;
  23. }
  24.  
  25. }
  26. $zm.link.onkeypress=showNext;
  27. }
  28. </script>
  29. </head>
  30. <body onload="ini();">
  31. <a id="odslon" href="jakikolwiek/adres">link</a>
  32. <div id="odsloniane">Tutaj jakaś treść</div>
  33. </body>
  34. </html>


Ten post edytował zegarek84 28.08.2010, 10:19:04


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
xix
post
Post #7





Grupa: Zarejestrowani
Postów: 87
Pomógł: 0
Dołączył: 14.11.2008

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


ten ostatni kod jest piekny. dzieki bardzo!
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 Aktualny czas: 19.08.2025 - 13:14