我无法使我的代码在Chrome中正常工作,但是当我将代码粘贴到JSFIDDLE中时,它可以正常工作。我正在尝试使用getElementsByClassName获取文档中的所有ul标签,然后在其中一个ul中获取所有lis。当我使用getElementsByClassName(“ ul”)时,它在Chrome中找不到任何内容,但是,如果我在uls getElementsByClassName(“ ul”)找到所有div之前删除了两个div之一,那么div似乎就是在破坏JS 。

我无法在JSFIDDLE中重现该问题,因为代码在那里可以正常工作,但它在这里:http://jsfiddle.net/zTP9H/

var sElements = document.getElementsByClassName("HeaderWrapWide");
var catOne = document.getElementsByTagName("ul");
alert("number of ul: " + catOne.length);

var liTags = catOne[3].getElementsByTagName("li");
alert("number of li: " + liTags.length);


谢谢

亚历克斯

最佳答案

确定将html添加到页面之后,您是否正在运行此javascript? jsfiddle可能以与您的网页不同的方式呈现html / script,因此这就是它在此处起作用的原因。如果您的JavaScript位于HTML的头部,则很可能会出现这种情况-尝试在文档就绪功能http://api.jquery.com/ready/上使用jquery或将JS移至页面底部

我看不到您的代码有什么问题

10-05 20:40
查看更多