【发布时间】:2011-03-25 00:41:45
【问题描述】:
我正在尝试编写一个仅显示带有培根标签的照片的greasemonkey 脚本。
它运行的网站是这样写的:
<div class="photos">
<ul>
...
<li>
<a href="photo1"> <img src="http://somesite.co/photo1.jpg" </a> <br /> <a href="tags_photo1"> <span class="tags"> bacon, delicious </span> </a>
</li>
...
</ul>
</div>
起初我尝试通过访问 div 然后使用 childNodes 来使用 DOM。我可以访问 img 和两个 href 节点,但不能访问 span。
接下来我尝试使用它从跨度中获取标签:
tagNodes=document.getElementsByClassName('tags');
它返回了一个 XPCNativeWrapper 集合,其中所有的元素都是未定义的。
关于如何获取标签的任何想法?我对javascript相当陌生,所以如果我的问题很愚蠢,我很抱歉。
[编辑]
var spans, tags;
spans = document.getElementsByTagName('span');
for (var i = spans.length - 1; i >= 0; --i)
{
tags = spans[i];
alert(tags.wrappedJSObject.nodeValue);
}
返回为 null,即使使用 WrappedJSObject。是因为 Object.prototype 不适用于 XPCNativeWrapper 吗?还是我错过了什么?
【问题讨论】:
标签: javascript dom greasemonkey