【发布时间】:2010-10-05 18:34:48
【问题描述】:
//编辑我的问题与其他问题有关,我认为实现不正确但它确实有效,感谢您的确认。
查看 jQuery 和prototypejs,似乎找不到他们在元素(不是 document.getElementsByTagName)上实现 getElementsByTagName 的方式。
这是我的测试 html:
<div id="something" style="margin: 10px 10px 10px 15px; overflow: auto; position: relative; height: 200px;">
<div style="float: left; width: 180px; font-size: 10px; margin-bottom: 4px;">
<label for="label_50">
<img style="vertical-align: middle; margin-right: 3px;" src="http://web1.wow.com/i/i_ask_sm.gif"/>
<a style="color: rgb(0, 0, 0); text-decoration: underline;" href="http://myjeeves.ask.com/mysearch/BookmarkIt?v=1.2&t=webpages&url=[URL]&title=[TITLE]" post_link="http://myjeeves.ask.com/mysearch/BookmarkIt?v=1.2&t=webpages&url=[URL]&title=[TITLE]" rel="external" target="_blank">Ask</a>
</label>
</div>
</div>
还有我现在的js:
document.getElementById("something").getElementsByTagName("a");
我正在寻找正确的实现,因为 IE 似乎无法正常使用它,而且我无法使用框架。
【问题讨论】:
-
您能否更详细地解释一下 getElementsByTagName 在 IE 中为何不适合您?
-
这个 应该 在 IE 中工作得很好,只要:(1) 在这个 HTML 之前的 DOM 中没有任何元素,且 NAME 属性设置为 "某事“......而你并没有试图找到 [param] 元素。
-
@scunliffe:我想做的是:someObject.property = document.getElementById("something").getElementsByTagName("a");这在 IE 中不起作用,它没有复制生成的数组,所以我必须循环遍历它并将其添加到本地数组,然后将其复制过来,奇怪的东西。
标签: javascript html dom