Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][JavaScript]Pokazywanie/ukrywanie div'a
Forum PHP.pl > Forum > Przedszkole
Darkhijacker
Mam taki oto kod:

  1. <script type="text/javascript">
  2. <!--
  3. function toggle_vis(id) {
  4. var e = document.getElementById(id);
  5. if(e.style.display == 'block')
  6. e.style.display = 'none';
  7. else
  8. e.style.display = 'block';
  9. }
  10. //-->
  11.  
  12. </head>
  13.  
  14. <p><a href="javascript: toggle_vis('popup');">Pokaz/zamknij</a></p>
  15.  
  16. <div id="popup" style="display: none;">
  17.  
  18. <script type="text/javascript" src="http://jakistamelement" charset="iso-8859-2"><!--
  19.  
  20. onClick=toggle_vis('popup');
  21.  
  22. //--></script>
  23.  
  24. </div>


Kod ten ma na celu takie zadania: klikasz w "Pokaz/zamknij" -->pokazuje się okienko popup z elementem w js (w tym przypadku baner reklamowy zaprzyjaźnionego serwisu) --> klikasz w baner który otwiera się w nowym oknie --> okienko popup automatycznie zamyka się po kliknięciu w baner za pomocą funkcji "toggle_vis('popup')"

I problem polega na tym, że po kliknięciu w baner okienko popup nie zamyka się. Moim zdaniem jest to wina źle zastosowanego onclick w tagu "<script>", ale niestety nie wiem jak to zrobić poprawnie. W związku z moim problemem proszę o pomoc.
mls
Znacznik script nie posiada zdarzenia click.
wookieb
No pewnie ze tak. onclick dajesz to elementu a ty dales do niczego.
Kod
document.getElementById('id').onclick=function()
{
toggle_vis('popup');
}
isso
Skorzystaj z tego
JS:
  1. function openClose(id)
  2. {
  3. if(document.getElementById) {
  4. element = document.getElementById(id);
  5. } else if(document.all) {
  6. element = document.all[id];
  7. } else return;
  8.  
  9. if(element.style) {
  10. if(element.style.display == 'block' ){
  11. element.style.display = 'none';
  12. } else {
  13. element.style.display = 'block';
  14. }
  15. }
  16. }

HTML
  1. <div id="overlays" style="display: none"><!--if want to show: display: block -->
  2. <div id="window" >
  3. <div id="inner" style="background-color: #ffffff; border: 5px solid #df0223" >Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nam porttitor, velit eget gravida accumsan, augue arcu tincidunt libero, vitae pretium tellus massa vel mi. Vivamus in nulla. In accumsan fermentum sem. Vivamus ultricies, nibh a sodales porta, purus lacus mattis elit, et aliquet pede arcu ac nisl. Nullam id pede nec ipsum iaculis viverra. Pellentesque sed mi id pede gravida laoreet. Aenean nibh. Aliquam adipiscing velit a enim. Donec a enim hendrerit risus tempus consectetuer. Nulla a metus.<br /><br />
  4. <a href="javascript:void(0); openClose('overlays');" >Zamknij</a>
  5. </div>
  6. </div>
  7. </div>
koreja
Wystarczy dać:
  1. <span onclick="toggle_vis('popup')>&nbsp;</span>
Darkhijacker
Nic nie pomaga... W takim razie powiem wam o drugim, prawie identycznym problemie. Może to uda się jakoś rozwiązać.
W drugim okienku popup ma wyświetlać się reklama adkontekst. Po kliknięciu w reklamę lub w X okienko ma się samo zamykać. I po kliknięciu w X popup zamyka się poprawnie, ale nie wiem jak zrobić to z reklamą. Gdzie mam umieścić kod odpowiedzialny za zamykanie popup?

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Popup</title>
  5. <script type="text/javascript" src="fadw.js"></script>
  6. <link rel="stylesheet" type="text/css" href="fadw.css" />
  7. </head>
  8.  
  9.  
  10. <div id="faw">
  11. <div class="bar"><a href="#">Reklama!</a><a href="#" onClick="hFa()" class="close">&nbsp;</a></div>
  12. <div onClick="hFa()" class="ad">
  13.  
  14. <script type="text/javascript" charset="iso-8859-2"><!--
  15. if (document.getElementById('adKontekst_0')==null) {
  16. var adKontekst_pola=new Array;
  17. document.write('<scr'+'ipt type="text/javascript" charset="iso-8859-2" '+
  18. 'src="http://adsearch.adkontekst.pl/akon/spliter?prid=3638&caid=83144&ns='
  19. +(new Date()).getTime()+'"'+'></'+'scri'+'pt>');
  20. }
  21. var adc_i=adKontekst_pola.length;
  22. document.write("<div id='adKontekst_"+adc_i+"'> </"+"div>");
  23. document.onclick=hFa();
  24. adKontekst_pola[adc_i]=new Object();
  25. adKontekst_pola[adc_i].nazwa="adKontekst_"+adc_i;
  26. adKontekst_pola[adc_i].typ=201;
  27. adKontekst_pola[adc_i].r=1;
  28. adKontekst_pola[adc_i].c=1;
  29. adKontekst_pola[adc_i].x=185;
  30. adKontekst_pola[adc_i].y=90;
  31. adKontekst_pola[adc_i].naroznik_lewy_gorny = 3; adKontekst_pola[adc_i].naroznik_prawy_gorny = 3; adKontekst_pola[adc_i].naroznik_lewy_dolny = 3; adKontekst_pola[adc_i].naroznik_prawy_dolny = 3; adKontekst_pola[adc_i].spacing=4; adKontekst_pola[adc_i].scalenie=2;
  32. adKontekst_pola[adc_i].paleta=new Object();
  33. adKontekst_pola[adc_i].paleta.kolor_tlo="#FFFFFF";
  34. adKontekst_pola[adc_i].paleta.kolor_tytul="#000000";
  35. adKontekst_pola[adc_i].paleta.kolor_opis="#000000";
  36. adKontekst_pola[adc_i].paleta.kolor_url="#000000";
  37. adKontekst_pola[adc_i].paleta.kolor_naglowek="#FFFFFF";
  38. adKontekst_pola[adc_i].paleta.kolor_tlo_naglowka="#FFFFFF";
  39. adKontekst_pola[adc_i].paleta.kolor_ramki_naglowka="#FFFFFF";
  40. adKontekst_pola[adc_i].metka="text";
  41. adKontekst_pola[adc_i].czy_url=true;
  42. adKontekst_pola[adc_i].id_koloru_metki="12";
  43. adKontekst_pola[adc_i].nform=8;
  44. //--></script>
  45.  
  46. </div>
  47. </div>
  48.  
  49. <script type="text/javascript">sFa();</script>
  50. </body>
  51. </html>
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-2025 Invision Power Services, Inc.