我可以使用以下JS创建IFRAME并将其添加到页面中。

问题是,如果我在页面上创建JS方法并在单击它的按钮上激活它,就可以使用它。
但是当我尝试通过设置location.href将相同的JS注入页面url时,它的工作方式不正确,而是用新的iframe替换了现有页面。

这是我的代码:

location.href = "javascript:ifrm = document.createElement('IFRAME');ifrm.style.width = 60+'px';ifrm.style.height = 40+'px';document.body.appendChild(ifrm);";

最佳答案

您必须将其包装在函数中...

location.href = "javascript:(function () {ifrm = document.createElement('IFRAME');ifrm.style.width = 60+'px';ifrm.style.height = 40+'px';document.body.appendChild(ifrm);})()";


...尽管您可以简单地用实际代码替换location.href更改:

ifrm = document.createElement('IFRAME');
ifrm.style.width = 60+'px';
ifrm.style.height = 40+'px';
document.body.appendChild(ifrm);

关于javascript - 如何在网址中注入(inject)javascript代码以在现有页面中插入iframe,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2653255/

10-11 01:48