【发布时间】:2012-07-14 21:51:03
【问题描述】:
我编写了一个运行良好的脚本,但我希望添加一个定时循环。我是 Javascript 新手,已经为此苦苦思索了几天,我希望专家能帮助我....
另外,我只需要它在 FireFox 中工作!
此脚本正在从 XML 中提取数据。如果在 XML 中找不到任何内容,则页面将正常显示。如果找到某些内容,它会创建一个弹出 div,显示找到的信息并播放音频文件。
如果通过调用外部 CSS 样式表在 XML 集中找不到任何内容,则弹出窗口只是一个可见性设置为隐藏的 div。如果找到某些内容,则它会引用单独的样式表并播放和音频文件,并将 div 设置可见更改为 true。
我需要以某种方式添加一个循环,以便此脚本每 20-30 秒检查一次 XML 文件,如果发现某些内容,它将显示我隐藏的 DIV 并播放音频警报。这个脚本功能齐全,除了我无法在不重新加载页面的情况下让脚本循环。
我也想将其保留在 <head> 标记中。
<head>
<script type="text/javascript">
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","xml/SearchRequest-11988N.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
xtotaltickets=xmlDoc.getElementsByTagName("issue")[0].getAttributeNode("total");
totaltickets=xtotaltickets.nodeValue;
ytotaltickets=parseInt(totaltickets);
if (ytotaltickets<1)
{
document.write("<link rel='stylesheet' type='text/css' href='notickets.css'>");
}
else
{
document.write("<link rel='stylesheet' type='text/css' href='newtickets.css'>");
var audioElement = document.createElement('audio');
audioElement.setAttribute('src', 'newticket.ogg');
audioElement.play();
}
</script>
同样,我只需要在 FireFox 中使用它!
【问题讨论】:
-
你看过 setInterval 吗?
标签: javascript html xml loops dom-events