Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [js]Skrypty nie dzialaja pod xhtml, przy wyslaniu naglowka xhtml+xml
Sh4dow
post
Post #1





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

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


  1. <?php
  2. header('Content-Type: application/xhtml+xml');
  3. ?>

Po wysłaniu tego naglowka, wszystkie skrpty przestaja dzialas. Oczywiscie tylko javascript.
uzylem tagow <![CDATA[ ]]> tak jak w specyfikacji. Mowie tutaj oczywiscie o Mozilla Firefox, bo jako jedyny obsluguje (chyba) taki naglowek.
Czy ktos moze wiedziec czy to wina naglowka czy przegladarki nie toleruja tego, czy skrypt jest walniety.
Probowalem ladowac skrypt bezposrednio w pliku jak i inkowalem go z pliku .js

Obawiam sie ze to nie wina skryptow bo sprawdzalem na roznych skryptach.


--------------------
Warsztat: Linux: PHP, MySQL, Apache, NetBeans, C++, Qt-Creator
Użytkownik, słowo którego specjaliści IT używają, gdy chcą powiedzieć idiota
Zarządzaj swoim budżetem domowym
Go to the top of the page
+Quote Post
Sh4dow
post
Post #2





Grupa: Zarejestrowani
Postów: 569
Pomógł: 0
Dołączył: 17.08.2003
Skąd: Dąbrowa Górnicza

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


[Edit]
Czy przy wysylaniu tego naglowka przegladarka moze nie obslugiwac
document.getElementById(); questionmark.gifquestionmark.gif
w konsoli javascript dostaje taki komunikat
Cytat
Błąd: document.getElementById("fscroller") has no properties
Plik źródłowy: http://localhost/Socrates2/
Wiersz: 55



a czy mozesz mi pokazac przyklad, podac link lub cos wiecej powiedziec ? Szukalem o DOM w necie ale na w3c.org jest to tak zakrecone ze nie dalem rady zrozumiec, na w3school jest ale to jest taki sam javascript (tak mi sie wydaje). W skrypcie nie uzywam document write. jedyne co moze byc jakos powiazane innerHTML.
Zadnych document.all juz nie ma bo pozamienialem je na document.getElementById
Tak bynajmniej na mozilla faq bylo napisane.

Nie jest to moj skrypt, ja jedynie go staram sie przerobic pod xhtml z naglowkiem

  1. <script type="text/javascript">
  2. <![CDATA[
  3. var delay=3000 //set delay between message change (in miliseconds)
  4. var fcontent=new Array()
  5.  
  6. begintag='<font face="verdana" size="1">'
  7.  
  8. fcontent[0]="<span style='color:grey;font-weight:bold'>:: Socrates-CMS.pl :: </span> :: 0 Uzytkownikow, 1 gosci"
  9.  
  10. fcontent[1]="<span style='color:grey;font-weight:bold'>:: Socrates-CMS.pl ::</span> :: </span>19672 odslon, 7349 wizyt"
  11.  
  12. fcontent[2]="<span style='color:grey;font-weight:bold'>:: Socrates-CMS.pl ::</span> </span>12312 plikow ktore w sumie zajmuja 3242 GB"
  13.  
  14. closetag='</font>'
  15.  
  16.  
  17.  
  18. var fwidth='400px' //set scroller width
  19. var fheight='14px' //set scroller height
  20.  
  21. var fadescheme=0 //set 0 to fade text color from (white to black), 1 for (black to white)
  22. var fadelinks=1 //should links inside scroller content also fade like text? 0 for no, 1 for yes.
  23.  
  24.  
  25. var hex=(fadescheme==0)? 240 : 0
  26. var startcolor=(fadescheme==0)? "rgb(240,240,240)" : "rgb(0,0,0)"
  27. var endcolor=(fadescheme==0)? "rgb(0,0,0)" : "rgb(240,240,240)"
  28.  
  29. var DOM2=document.getElementById
  30. var faderdelay=0
  31. var index=0
  32.  
  33. if (DOM2)
  34. faderdelay=3000
  35.  
  36. //function to change content
  37. function changecontent(){
  38. if (index>=fcontent.length)
  39. index=0
  40. if (DOM2){
  41. document.getElementById("fscroller").style.color=startcolor
  42. document.getElementById("fscroller").innerHTML=begintag+fcontent[index]+closetag
  43. linksobj=document.getElementById("fscroller").getElementsByTagName("A")
  44. if (fadelinks)
  45. linkcolorchange(linksobj)
  46. colorfade()
  47. }
  48.  
  49. index++
  50. setTimeout("changecontent()",delay+faderdelay)
  51. }
  52.  
  53. frame=20;
  54.  
  55. function linkcolorchange(obj){
  56. if (obj.length>0){
  57. for (i=0;i<obj.length;i++)
  58. obj[i].style.color="rgb("+hex+","+hex+","+hex+")"
  59. }
  60. }
  61.  
  62. function colorfade() {
  63. // 20 frames fading process
  64. if(frame>0) {
  65. hex=(fadescheme==0)? hex-12 : hex+12 // increase or decrease color value depd on fadescheme
  66. document.getElementById("fscroller").style.color="rgb("+hex+","+hex+","+hex+")"; // Set color value.
  67. if (fadelinks)
  68. linkcolorchange(linksobj)
  69. frame--;
  70. setTimeout("colorfade()",5);
  71. }
  72. else{
  73. document.getElementById("fscroller").style.color=endcolor;
  74. frame=20;
  75. hex=(fadescheme==0)? 255 : 0
  76. }
  77. }
  78. window.onload=changecontent
  79. ]]>


Ten post edytował Sh4dow 16.12.2004, 11:02:13


--------------------
Warsztat: Linux: PHP, MySQL, Apache, NetBeans, C++, Qt-Creator
Użytkownik, słowo którego specjaliści IT używają, gdy chcą powiedzieć idiota
Zarządzaj swoim budżetem domowym
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 - 18:05