JS把onmouseover和out事件放入JS中后不生效,求解!

<divclass="ftnav_1"><ulid="ftn_1"><li><ahref="/">1</a></li><li><ahref="/">2</a></li><... <div class="ftnav_1">
<ul id="ftn_1">
<li><a href="/">1</a></li>
<li><a href="/">2</a></li>
<li><a href="/">3</a></li>
<li><a href="/">4</a></li>
</ul>
</div>

<script>
var fot = document.getElementById("ftn_1").getElementsByTagName("li");
for(var i=0;i<fot.length;i++)
{
fot[i].onmouseover = function()
{
document.getElementById("ftn_1").className="ftnav_ho1";
}

fot[i].onmouseout = function()
{
document.getElementById("ftn_1").className="ftnav_1";
}
}
</script>
JS不生效 求高手解答
展开
 我来答
yolry
2013-08-22 · TA获得超过8223个赞
知道小有建树答主
回答量:1282
采纳率:50%
帮助的人:240万
展开全部
var fot = document.getElementById("ftn_1").getElementsByTagName("li");
这个语句本来就有问题。
document.getElementById("ftn_1").得到的是一个UI的对象,在调用getElementsByTagName("li");肯定是空。那么下面的循环就不走了
你直接用var fot = documentgetElementsByTagName("li");
更多追问追答
追问
就是我是想当鼠标指向id=ftn_1下面的li时候替换id=ftn_1的class,因为这个JS要重复用几次但是id不一样,应该怎么写呢,球大侠指教!
追答
对啊,。你直接用documentgetElementsByTagName("li");就可以得到所有的li了啊。然后调用onmouseover不就可以了
你是想说li山一层的ul的ID不一样么?那你就用li的parentNode方法来找到她的父对象,不要用getid的
百度网友f4ebc83
2013-08-22 · 超过91用户采纳过TA的回答
知道小有建树答主
回答量:236
采纳率:0%
帮助的人:176万
展开全部
你要的效果根本不用把事件绑定到li里呀,直接绑定ul 即可:
var fot = document.getElementById("ftn_1");
fot.onmousemove = function(){this.className="ftnav_ho1"};
fot.onmouseout = function(){this.className="ftnav_1"};
追问
其实我是要指向ul里的li 改变 ul外面那个DIV的CLSS,可能我没把效果图放上来大家不知道我要什么效果,不过非常感谢哈! 上面的朋友先回答的我采纳他的了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1035063420
2013-08-22 · 超过15用户采纳过TA的回答
知道答主
回答量:96
采纳率:0%
帮助的人:47.2万
展开全部
直接用documentgetElementsByTagName("li");或者用Jquery的$('.ftn_1 li')也可以
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhaoapk
2013-08-22 · TA获得超过3771个赞
知道大有可为答主
回答量:1343
采纳率:40%
帮助的人:1595万
展开全部
class加到ul上面了,你想加到div上面?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式