为了账号安全,请及时绑定邮箱和手机立即绑定

document.getElementById("second").value=i?

//获取显示秒数的元素,通过定时器来更改秒数。 
   var sec=document.getElementById("second");
   var i=5;
   function countDown(){
       i--;
      sec.innerHTML=i;
     //document.getElementById("second").value=i;
     if(i==1)
    {
         window.location.href="http://www.imooc.com/";
     }
   }
    setInterval(countDown,1000);  
  

为什么用斜体加粗部分的代码写的话(同时把var sec=document.getElementById("second");注释掉),5不会动?

斜体加粗部分的.value和.innerHTML有什么区别?因为8-3 计时器setInterval()中的代码中用了.value,请教大家。

正在回答

5 回答

 <b id="second">5</b>像这样内容写在标签中间的都用innerHTML来获取内容;

<input type="text" value="5"/>这种内容写在value属性上的就用value获取内容;

因此这里document.getElementById("second").innerHTML=i;(value改成innerHTML)就可以正确赋值i;


2 回复 有任何疑惑可以回复我~
#1

heyleta 提问者

非常感谢!
2016-11-22 回复 有任何疑惑可以回复我~
#2

heyleta 提问者

嗯嗯明白了,非常感谢!
2016-11-22 回复 有任何疑惑可以回复我~

这样的话,5当然不会动,因为你把上面的(var sec=document.getElementById("second");)这个注释掉的话,就获取不到id位“second”的对象,所以5怎么也不会动

0 回复 有任何疑惑可以回复我~

<!DOCTYPE html>
<html>
 <head>
  <title>浏览器对象</title> 
  <meta http-equiv="Content-Type" content="text/html; charset=gkb"/>  
 </head>
 <body>
  <!--先编写好网页布局-->
  <h1 >操作成功</h1>
   <p>
     <b id="second">5</b>秒后回到主页&nbsp;<a href="javascript:goBack();">返回</a> 
  </p>

  <script type="text/javascript"> 
 
   //获取显示秒数的元素,通过定时器来更改秒数。 
   var sec=document.getElementById("second");
   var i=5;
   function countDown(){
       i--;
      sec.innerHTML=i;
     //document.getElementById("second").value=i;
     if(i==1)
    {
         window.location.href="http://www.imooc.com/";
     }
   }
    setInterval(countDown,1000);  
  

   //通过window的location和history对象来控制网页的跳转。
   function goBack(){
       window.history.go(-1);
   }
  
 </script>
</body>
</html>


0 回复 有任何疑惑可以回复我~

代码发完整,你这里id为second是什么元素

0 回复 有任何疑惑可以回复我~
#1

heyleta 提问者

好的,请看下我的代码。在下面这条回答里。
2016-11-22 回复 有任何疑惑可以回复我~

通过id获取标签,并使其值为i

0 回复 有任何疑惑可以回复我~
#1

heyleta 提问者

这是哪一条代码的解释?
2016-11-22 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

document.getElementById("second").value=i?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信