为什么第三秒显示不出来

来源:8-17 编程练习

慕田峪5648110

2016-09-02 00:29

<!DOCTYPE html>
<html>
 <head>
  <title>浏览器对象</title> 
  <meta http-equiv="Content-Type" content="text/html; charset=gkb"/>  
 </head>
 <body>
  <!--先编写好网页布局-->
  <H4>操作成功</H4>
  <p><span id="id">5</span>秒后回到主页<a href="#" onclick="set()">返回</a><p>
 
 
  <script type="text/javascript"> 
 
   //获取显示秒数的元素,通过定时器来更改秒数。
var da=document.getElementById("id").innerHTML;
function set(){
    if(da>0){
        document.getElementById("id").innerHTML=--da;
        setInterval(set,1000);
        }else{
            window.location.assign("http://www.baidu.com");
        }
    }
setInterval(set,1000);
   //通过window的location和history对象来控制网页的跳转。
  
 </script>
</body>
</html>

写回答 关注

3回答

  • 旺旺肖肖酥
    2016-09-02 08:45:12
    已采纳

    <!DOCTYPE html>

    <html>

     <head>

      <title>浏览器对象</title>  

      <meta http-equiv="Content-Type" content="text/html; charset=gkb"/>   

     </head>

     <body>

      <!--先编写好网页布局-->

      <H4>操作成功</H4>

      <p><span id="id">5</span>秒后回到主页<a href="#" onclick="set()">返回</a><p>

      

     

      <script type="text/javascript">  

     

       //获取显示秒数的元素,通过定时器来更改秒数。

    var da=document.getElementById("id").innerHTML;

    function set(){

        if(da>0){

            document.getElementById("id").innerHTML=da--;

           

            }else{

                window.location.assign("http://www.baidu.com");

            }

        }

    setInterval("set()",1000);

       //通过window的location和history对象来控制网页的跳转。

       

     </script> 

    </body>

    </html>


  • 旺旺肖肖酥
    2016-09-02 08:46:44

    修改你的 可以用了 你在试试 --da 和 da--   看显示有什么区别

    慕田峪564...

    好的,谢谢,确实是计时器写多了

    2016-09-02 10:36:00

    共 1 条回复 >

  • 旺旺肖肖酥
    2016-09-02 08:42:44

    --da和da--  这两个是不一样的  前者 先自减在赋值,后者先赋值再自减   , 你家的 onclick时间是这么用的 也是挺神的 还有 你两个 setInterval   肯定有秒数被跳过

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题