火狐浏览器。允许通过javascript访问iframe元素

Pj_pavel

我正在写一个用于在外部网页上找到CSS选择器的工具。这是纯HTML页面,其中包含带有目标网站和少量控件元素的iframe。所有逻辑也都在使用jquery的javascript中,因此目前尚无服务器端。

我面临的问题是无法使用Firefox 26.0将处理程序/类添加到iframe文档元素。样例代码:

 iframe.contents().find("*").hover(function() {
     console.log("This is " + $(this).get(0).tagName + "element");
 }

我在控制台中收到下一条错误消息:Error: Permission denied to access property 'document'我知道这确实是一项安全功能,但是我只需要以某种方式解决它。

我尝试过的

  • 使用Google Chrome浏览器-它允许运行带有特殊标志(--disable-web-security)的浏览器,以关闭此类安全功能。它提供了帮助,并且我的工具可以按预期运行,但是我需要使用Firefox。
  • 使用插件https://addons.mozilla.org/en-US/firefox/addon/forcecors/它根本没有帮助。我也尝试添加x-frames-origin header该工具,但没有结果。
  • security.fileuri.strict_origin_policy在firefox配置中关闭标志。也没有帮助。

也许我错过了一些东西,还有其他解决方法/更好的解决方案?我将不胜感激。

更新:页面和iframe不在同一网站上。我的工具只是本地.html文件,iframe源-任何网站(维基百科,雅虎等)

Pj_pavel

终于我找到了解决方案。我使用了一个插件GreaseMonkey它允许我将js代码插入到iframe中,因此我可以使用Message API与页面中的代码进行交互。例子:

  • 阻止在父窗口中运行代码: if (window.top == window.self) return;
  • 从主窗口中接收一些信息: window.addEventListener('message', yourHandlerHere, false);
  • 将内容发布到主窗口: window.parent.postMessage(yourDataHere);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

火狐浏览器非常慢

来自分类Dev

火狐浏览器非常慢

来自分类Dev

如何通过浏览器JavaScript访问Docusign API?

来自分类Dev

通过浏览器访问DynamoDB

来自分类Dev

火狐浏览器-CSS分词:整体不稳定

来自分类Dev

通过浏览器扩展注入JavaScript

来自分类Dev

([javaScript)通过iOS中的HTML5浏览器访问摄像头

来自分类Dev

如何通过javascript打印/回显访问者浏览器语言

来自分类Dev

在浏览器中使用javascript通过类设置html输入元素的值?

来自分类Dev

如何通过单击浏览器中的“检查元素”来获取由JavaScript生成的html?

来自分类Dev

在浏览器中使用javascript通过类设置html输入元素的值?

来自分类Dev

使用JavaScript从iframe中检测浏览器,并根据浏览器显示不同的<div>内容?

来自分类Dev

无法通过浏览器访问WCF服务

来自分类Dev

通过浏览器访问ePass2003 Auto令牌

来自分类Dev

通过浏览器访问互联网

来自分类Dev

禁用通过浏览器的文件和目录访问

来自分类Dev

无法通过浏览器访问WCF服务

来自分类Dev

无法通过网络浏览器访问rancid

来自分类Dev

如何阻止某些网站通过浏览器访问?

来自分类Dev

无法通过浏览器访问 Laravel 中的 POST 路由

来自分类Dev

如何直接通过浏览器发送访问令牌

来自分类Dev

如何通过浏览器访问您的终端窗口?

来自分类Dev

在Safari浏览器中的javascript中访问相机的方法

来自分类Dev

在浏览器中的javascript中访问请求ip

来自分类Dev

在Safari浏览器中的javascript中访问相机的方法

来自分类Dev

通过网络浏览器访问Java云端硬盘API应用程序数据的凭据(JavaScript)

来自分类Dev

如何通过MacBook,PC,IOS和Andrroid中的javascript代码检测访问者浏览器

来自分类Dev

通过网络浏览器访问Google Drive API应用程序数据的凭据(JavaScript)

来自分类Dev

火狐浏览器。撤消“从现在开始自动对此类文件执行此操作”

Related 相关文章

  1. 1

    火狐浏览器非常慢

  2. 2

    火狐浏览器非常慢

  3. 3

    如何通过浏览器JavaScript访问Docusign API?

  4. 4

    通过浏览器访问DynamoDB

  5. 5

    火狐浏览器-CSS分词:整体不稳定

  6. 6

    通过浏览器扩展注入JavaScript

  7. 7

    ([javaScript)通过iOS中的HTML5浏览器访问摄像头

  8. 8

    如何通过javascript打印/回显访问者浏览器语言

  9. 9

    在浏览器中使用javascript通过类设置html输入元素的值?

  10. 10

    如何通过单击浏览器中的“检查元素”来获取由JavaScript生成的html?

  11. 11

    在浏览器中使用javascript通过类设置html输入元素的值?

  12. 12

    使用JavaScript从iframe中检测浏览器,并根据浏览器显示不同的<div>内容?

  13. 13

    无法通过浏览器访问WCF服务

  14. 14

    通过浏览器访问ePass2003 Auto令牌

  15. 15

    通过浏览器访问互联网

  16. 16

    禁用通过浏览器的文件和目录访问

  17. 17

    无法通过浏览器访问WCF服务

  18. 18

    无法通过网络浏览器访问rancid

  19. 19

    如何阻止某些网站通过浏览器访问?

  20. 20

    无法通过浏览器访问 Laravel 中的 POST 路由

  21. 21

    如何直接通过浏览器发送访问令牌

  22. 22

    如何通过浏览器访问您的终端窗口?

  23. 23

    在Safari浏览器中的javascript中访问相机的方法

  24. 24

    在浏览器中的javascript中访问请求ip

  25. 25

    在Safari浏览器中的javascript中访问相机的方法

  26. 26

    通过网络浏览器访问Java云端硬盘API应用程序数据的凭据(JavaScript)

  27. 27

    如何通过MacBook,PC,IOS和Andrroid中的javascript代码检测访问者浏览器

  28. 28

    通过网络浏览器访问Google Drive API应用程序数据的凭据(JavaScript)

  29. 29

    火狐浏览器。撤消“从现在开始自动对此类文件执行此操作”

热门标签

归档