定时就要用到window下的东西了..然后读取网页 上的东西.

解决方案 »

  1.   

    我在LINUX上用PHP编程.不知该怎么实现.现在用while循环来读文件然后再显示,这样速度相当慢.
      

  2.   

    我用AJAX读取得,用了个setTimeOut()方法来调用。
      

  3.   

    具体怎么实现的能告诉我吗?我看了点AJAX,但不会实现.多谢了!
      

  4.   

    <html>
    <head>
    <title>News</title>
    </head>
    <body>
    <script type="text/javascript"> 
    function display(){
    var a = document.getElementById('news');
    if(a.style.display == 'block'){
    a.style.display = 'none';
    }
    else{
    a.style.display = 'block';
    update_news_content();
    }
    }

    function eval_js_contenu(ch){
            var tab_ch = ch.split("<script");
        for (var i=1; i<tab_ch.length; i++){
             var code_js = tab_ch[i];
             code_js = code_js.substring(code_js.indexOf(">")+1, code_js.indexOf("</"+"script>"));
             eval(code_js);
        }
    }
    function AJAXRequest(page,retfonc,methode,data,async){
            if (!async) async = false;
            var xhr_object = null;
            if(window.XMLHttpRequest) // Firefox
            xhr_object = new XMLHttpRequest();
        else if(window.ActiveXObject) // Internet Explorer
            xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
        else{
            alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
            return;
            }
        if (data=="")
    data=null;
        if(methode == "GET" && data != null){ 
            page += "?"+data; 
            data = null; 
            }
        xhr_object.open(methode, page, !async);
        xhr_object.onreadystatechange = function(){
        if(xhr_object.readyState == 4) {
         var RetAjax=xhr_object.responseText;
         eval(retfonc+'(RetAjax);');
                    }
            }
        if(methode == "POST")
             xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        xhr_object.send(data);
    }

    function interface_replace_data(ch) {
    var regStart = /<!---- [^/]\w+ ---->/g;
    var regEnd = /<!---- [/]\w+ ---->/g;
    var aryStartComment = new Array();
    var aryContent = new Array();
    aryStartComment = ch.match(regStart);
    aryContent = ch.split(regStart);
    if(aryStartComment.length == aryContent.length) {
    for(var i = 0 ; i < aryContent.length ; i++) {
         var divId = aryStartComment[i].replace("<!---- ","").replace(" ---->","");
         var divContent = aryContent[i].replace(regEnd,"");
         var oDiv = document.getElementById(divId);
         oDiv.innerHTML = divContent;
    }
    } else {
    for(var i = 0 ; i < aryContent.length ; i++) {
    var divId = aryStartComment[i].replace("<!---- ","").replace(" ---->","");
    var divContent = aryContent[i+1].replace(regEnd,"");
    var oDiv = document.getElementById(divId);
    oDiv.innerHTML = divContent;
    }
    }
            eval_js_contenu(ch);
        }
    function update_news_content(){
    AJAXRequest("data.php","interface_replace_data","POST","action=update_news");
    }
    SET_DHTML("news");
         </script>
    <a href='javascript:display();'>display</a>
    <div id="news" style="overflow:hidden; width: 243px;height: 130px; background:#ff00ff;margin: 5px;float:left;display:none;">
    <div id="news_content"></div>
    <div id="news_temp"></div>
    <script type="text/javascript">
    var speed = 40;
    var news = document.getElementById('news');
    var news_content = document.getElementById('news_content');
    var news_temp = document.getElementById('news_temp');
    function Marquee(){
    if(news_temp.offsetHeight-news.scrollTop <= 0){
    news.scrollTop-=news_content.offsetHeight;
    update_news_content();
    }
    else{
    news.scrollTop++;
    }
    }
    var fun_call = setInterval(Marquee,speed);
    news.onmouseover = function(){clearInterval(fun_call)}
    news.onmouseout = function(){fun_call = setInterval(Marquee,speed)}
    </script>
    </div>
    </body>
    </html>
      

  5.   

    以前写的一个走马灯广告,但是这样耗费资源
    news.onmouseover = function(){clearInterval(fun_call)}
    news.onmouseout = function(){fun_call = setInterval(Marquee,speed)} 
    这两句就可以控制时间
      

  6.   

    我调试时说程序有错误.在display()处.不知道为啥...
      

  7.   

    错误不在display()那.但是还是有错.错在哪呢?