Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Pomocy w poprawieniu skryptu cookies info, document.getElementById(...) is null
fate
post
Post #1





Grupa: Zarejestrowani
Postów: 824
Pomógł: 106
Dołączył: 14.03.2012
Skąd: Warszawa

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


http://webhelp.pl/artykuly/okienko-z-infor...czkach-cookies/

Skrypt działa "jak należy" Zmodyfikowałem wygasalnosc ciasteczka oraz dodałem nieudolnie auto zamykanie sie okienka po czasie

  1. function WHCreateCookie(name, value) {
  2. var date = new Date();
  3. date.setTime(date.getTime() + (365*24*60*60*1000));
  4. var expires = "; expires=" + date.toGMTString();
  5. document.cookie = name+"="+value+expires+"; path=/";
  6. }
  7. function WHReadCookie(name) {
  8. var nameEQ = name + "=";
  9. var ca = document.cookie.split(';');
  10. for(var i=0; i < ca.length; i++) {
  11. var c = ca[i];
  12. while (c.charAt(0) == ' ') c = c.substring(1, c.length);
  13. if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
  14. }
  15. return null;
  16. }
  17. window.onload = WHCheckCookies;
  18. function WHCheckCookies() {
  19. if(WHReadCookie('NAOQ_cookies_accepted') != 'T') {
  20. var message_container = document.createElement('div');
  21. message_container.id = 'cookies-message-container';
  22. var html_code = '<div id="cookies-message">Ciasteczka <a href="java script:WHCloseCookiesWindow();" id="accept-cookies-checkbox" name="accept-cookies">Zaakceptuj</a></div>';
  23. message_container.innerHTML = html_code;
  24. document.body.appendChild(message_container);
  25. }
  26. }
  27. function WHCloseCookiesWindow() {
  28. WHCreateCookie('NAOQ_cookies_accepted', 'T');
  29. document.getElementById('cookies-message-container').removeChild(document.getElementById('cookies-message'));
  30. }
  31. function closetimeout() {
  32. document.getElementById('cookies-message-container').removeChild(document.getElementById('cookies-message'));
  33. }
  34. window.setTimeout("closetimeout()",10000);


Tak jak wspominalem działa OK alepo raz 1 grzebiac przy czyms innym zajrzalem do konsoli błedów i wywala mi przy tylko przy tym 1 skrypcie:
TypeError: document.getElementById(...) is null
wiersz 32

Przez ta moja modyfikacje pewnie robiona metoda prób i błędów,
podreperuje ktoś?

Blad wyskakuje jezeli ciasteczko jest zaakceptowane po 10 sekundach - pewnie dlatego ze okienko wtedy wcale sie nie pokazuje, pewnie trzeba dac jakis prosty warunek ale ja nie znam za bardzo nawet skladni JS choc wlasnie przy okazji takiej jak ta naucze sie mimochodem
Dzieki

Ten post edytował fate 12.08.2013, 08:58:29
Go to the top of the page
+Quote Post

Posty w temacie


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: 23.08.2025 - 06:53