javascript - 将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 扩展又如何呢?
是因为权限吗?
解决方案
推荐阅读
- javascript - 播放器图标在视频缩略图加载到视频播放器之前显示
- php - 使用 PHP 在下拉列表中动态添加项目
- javascript - 如何遍历 json_encode 数组?
- javascript - 当另一行的折叠状态发生变化时,表格行布局会发生变化
- fonts - 渲染网页时通过字体加载自定义字体它首先加载其他字体并在瞬间替换
- r - 可访问性模块 highcharter 不工作
- ios - 如何在 App Store Connect 中撤销 iOS 应用程序的 Apple Silicon Compatibility 验证状态?
- python - 使用 subprocess 模块打开可执行文件,并向其发送数据
- c - 为什么没有对中间元素进行排序?
- ffmpeg - 使用 ffmpeg 或 gstreamer 将实时 mjpeg 流转码为 hls 流