Sen*_*ful 16 javascript security iframe bookmarklet
有没有办法在来自不同域的iFrame上运行bookmarklet?
例如,我有一个从http://example.com加载的页面,它有一个iFrame,其源代码设置为http://example2.com.当我运行bookmarklet时,它总是在http://example.com上运行,因为那是主页面.我想在另一个iFrame上运行它.
当我尝试与iFrame交互时(例如,通过将其源属性更改为javascript:alert('test')),Chrome会显示以下错误:
不安全的JavaScript尝试与URL访问框架http://example.com从框架与URL http://example2.com.域,协议和端口必须匹配.
我尝试将书签拖放到框架中,但它说:
无法加载资源
有没有办法让我在Chrome中使用书签与iFrame交互?
iFrame 与 ajax 调用一样具有很高的安全性。
任何以跨域方式使用这些的尝试都会导致安全错误。
想象一下,您能够与不同域上的其他 iFrame 进行交互。您将能够制作一个宽度和高度均为 100% 的 iFrame(如 facebook 登录页面),并添加一个在提交事件上执行的函数,该函数会在提交之前通过电子邮件向您发送用户名并通过。
所以你在完成你想做的事情时会遇到很多困难。您基本上不能弄乱不属于您的页面。不过,您可以使用 firebug 通过 html 选项卡来编辑它。
希望有帮助