我正在编写一个 GreaseMonkey 脚本,它修改具有特定 ID 的元素的属性,但由于非传统的 HTML 层次结构,我在访问它时遇到了一些问题。这是相关的HTML:
<body>
...
<iframe id="iframeID">
<html>
...
<body id="bodyID" attribute="value">
...
</body>
...
</html>
</iframe>
...
</body>
attribute
我试图修改的属性在哪里。
起初,没有意识到我正在使用一个iframe
和一个嵌套body
标签,我尝试了这个:
document.getElementById('bodyID').setAttribute("attribute","value")
虽然这在 Firefox 中运行良好,但 Chrome 告诉我我无法设置 的属性null
,这表明它找不到任何具有 id 的元素bodyID
。如何以跨浏览器友好的方式修改此属性?