我有一个javascript调试代码,我需要在特定网站上不时运行。
该网站有几个iframe。
当我使用Chrome的调试控制台时,我可以选择运行代码的iFrame。
我使用代码javascript:my_debug_code()
创建了一个书签 - 但我怎么能告诉它在我需要的iFrame上运行?
修改
这与建议的Invoking JavaScript code in an iframe from the parent page不重复。
因为我没有尝试从页面本身运行代码。
我的问题不同 - 我想从书签中运行代码。
答案
我无法发布新答案,因为标记的问题是重复的。
但是从@Gothdo回答,显然我只需要添加到我的书签:
javascript:window.frames[0].my_debug_code()
答案 0 :(得分:1)
如果iframe与主窗口的原点相同,则可以这样做。只需创建一个新脚本并将其附加到该iframe的const code = "console.log('hello world from iframe', location.href)"
,iframeName = "YOUR-IFRAME-NAME"
const script = document.createElement("script")
window.frames[iframeName].document.head.appendChild(script)
script.src = "data:text/javascript;base64," + btoa(code)
元素。
{{1}}