הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   עזרה עם xml ו setInterval (https://hosts.co.il/forums/showthread.php?t=84172)

Skfir 03-08-10 22:14

עזרה עם xml ו setInterval
 
קוד:

<html>
<head>
<script type="text/javascript" src="js.js"></script>
</head>
<body>
<script type="text/javascript">
xmlDoc=loadXMLDoc("books.xml");

document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue + "<br />");
document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue + "<br />");
document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue);
</script>
</body>
</html>

קוד:

function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
  {
  xhttp=new XMLHttpRequest();
  }
else
  {
  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
}

איך אני מוסיף לזה רענון אוטומטי שזה יציג תוכן עדכני מה xml שלי
אני ידוע שמשתמשים ב setInterval או setTimeout אבל זה לא מצליח לי...

~The_Sultan~ 03-08-10 22:27

פשוט בסוף הפונקציה, לפני ה-RETURN, תוסיף את ה-SETTIMEOUT שלך. ניסית ככה וזה לא הצליח? אם כן, יעזור לי לראות את הקוד שכתבת

Skfir 04-08-10 12:02

קוד:

function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
  {
  xhttp=new XMLHttpRequest();
  }
else
  {
  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET",dname,false);
xhttp.send();
setTimeout("loadXMLDoc(dname)", 5);
return xhttp.responseXML;
}

לא עובד

Hagaibl 04-08-10 18:15

למה setTimeout זה להשהייה. הוא רוצה רענון זה setInterval

את הקוד הבא:

PHP קוד:

xmlDoc=loadXMLDoc("books.xml");

document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue "<br />");
document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue "<br />");
document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue); 

הכנס לתוך פונקציה שניתן לה את השם xmlPrint כלומר:
PHP קוד:

function xmlPrint() {
    
xmlDoc=loadXMLDoc("books.xml");

    
document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue "<br />");
    
document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue "<br />");
    
document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue);


ולאחריה נוסיף
PHP קוד:

setInterval("xmlPrint()"5000); 

זה יגרום שהקוד יודפס כל 5 שניות, במידה ותרצה פחות תשנה את המסר 5000 בשורה של setInterval. (רשום את הזמן במילי-שניות כלומר שניה אחת זה 1000)

Skfir 04-08-10 18:32

קוד:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<title>Hello!</title>
<script language="JavaScript" type="text/javascript">
function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
  {
  xhttp=new XMLHttpRequest();
  }
else
  {
  xhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
}
function xmlPrint() {
    xmlDoc=loadXMLDoc("books.xml");
    document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue + "<br />");
    document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue + "<br />");
    document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue);
}
setInterval("xmlPrint()", 5000);
</script>
</head>

<body>
</body>
</html>

לא טוב...
זה טוען את התוכן והכל אבל הוא לא טוען תדף הוא משאיר תטעינה על פס אחד כאילו הוא תקוע

Hagaibl 04-08-10 18:49

הוא לא אמור לטעון את הדף :| רק את התוכן

Skfir 04-08-10 19:03

אני אומר לך מה הקוד עושה..
אני מפעיל תדף ברגע שהוא טוען את התוכן לדף הוא מראה שהדף לא נטען במלואו
תמונה :
http://img72.imageshack.us/img72/8743/84943586.jpg
http://img72.imageshack.us/img72/8743/84943586.jpg
וזה נשאר ככה זה לא נטען


כל הזמנים הם GMT +2. הזמן כעת הוא 09:32.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ