首页 > 解决方案 > 将js注入iframe

问题描述

我试图从控制台将 js 注入到某个网站(不是本地主机)的 iframe 中并得到:

未捕获的 DOMException:阻止具有源 X 的框架访问跨域框架。

但然后是看到像 Smaple这样的代码示例

var $doc = $(document.getElementById('test').contentWindow.document),
    $booTitle = $('<h1>boo!</h1>'),
    $poopParagraph = $('<p>poop!</p>');

$doc.find('head').append($("<script />", {
    src: '//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'
}));

$doc.find('head').append($("<script />", {
    html: '$doc.find("body").append($booTitle);'
}));

$doc.find('body').append($poopParagraph);

$doc.find('head').append($('<ref'))

以及能够做到这一点的chrome扩展......

那么区别是什么呢?

我猜codepen是同一个起源。但是它像控制台一样在本地运行的 chrome 扩展又如何呢?

是因为权限吗?

标签: javascriptiframe

解决方案


推荐阅读