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

为什么不能执行呀?求解

为什么不能执行呀?求解

leexiaoxiao 2016-09-22 10:56:01
<style type="text/css"> *{ margin: 0px; padding: 0px; } #banner{ width: 400px; height: 300px; border: 2px solid green; } #banner .nav{ width: 100%; height: 50px; } #banner .nav ul li{ width: 130px; height: 50px; float: left; list-style: none; background: green; margin-left: 2px; } #banner .text{ width: 400px; height: 250px; border: 1px solid red; } </style></head><body>   <div id="banner">     <div class="nav">    <ul>    <li></li>    <li></li>    <li></li>    </ul>      </div>     <div class="text"></div>   </div> <script>  var getNav = document.getElementsByTagName("li");  var li1="我喜欢编程";  var li2="我喜欢数据结构";  var li3="我要成功";  var getText = document.getElementsByClassName("text")  function changeText(obj,txt){        obj.innerHTML=txt;  }  getNav[0].onmouseover =function(){  changeText(getText,li1);  } </script>
查看完整描述

3 回答

已采纳
?
MarlboroKay

TA贡献189条经验 获得超236个赞

首先,

document.getElementsByClassName("text")

得到的是一个数组。所以你的变量getText是一个数组。

其次,changeText()里的obj参数有误,应该把数组下标带上,如下

changeText(getText[0],li1);

如果你自由一个class = "text"的话,建议定义成id比较好操作

var getText =document.getElementById("text");

这样changeText(getText,li1);就不会出错了。

希望能够帮到你,望采纳

查看完整回答
1 反对 回复 2016-09-22
?
慕粉3882219

TA贡献2条经验 获得超1个赞

<script>

 window.onload=function(){

   var getNav = document.getElementsByTagName("li");

   var li1="我喜欢编程";

   var li2="我喜欢数据结构";

   var li3="我要成功";

   var getText =document.getElementById("text");

   getNav[0].onmouseover =function(){

         changeText(getText,li1);

   }

 }

 function changeText(obj,txt){

        obj.innerHTML=txt;

   }

 </script>


查看完整回答
1 反对 回复 2016-09-22
?
Caballarii

TA贡献1123条经验 获得超629个赞

getText是根据class取的,也是数组,所以changeText(getText[0],li1)

查看完整回答
1 反对 回复 2016-09-22
  • 3 回答
  • 0 关注
  • 1459 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信