Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 阅读和操作ifame';来自不同域中的父对象的文档对象模型_Javascript_Html_Iframe_Google Chrome Extension_Cross Domain - Fatal编程技术网

Javascript 阅读和操作ifame';来自不同域中的父对象的文档对象模型

Javascript 阅读和操作ifame';来自不同域中的父对象的文档对象模型,javascript,html,iframe,google-chrome-extension,cross-domain,Javascript,Html,Iframe,Google Chrome Extension,Cross Domain,我想实现一个页面,它可以显示(嵌入)来自完全不同的域的另一个页面,这不在我的控制之下。(比如www.google.com)。 最终用户在父页面中填写url输入字段,然后父页面显示嵌入的内容 到目前为止,这可能很容易,但是父页面必须能够读取和操作嵌入页面的文档。没有什么特别的,只是突出显示元素。我知道这会引起严重的安全问题。 从子页读取的某些数据必须发送到我的服务器(与父页相同的域) (请注意,尽管主题不同,此应用程序将完全是合法的商业服务,与任何灰色或黑色的伎俩或做法无关) 有可能吗 如果最终

我想实现一个页面,它可以显示(嵌入)来自完全不同的域的另一个页面,这不在我的控制之下。(比如www.google.com)。 最终用户在父页面中填写url输入字段,然后父页面显示嵌入的内容

到目前为止,这可能很容易,但是父页面必须能够读取和操作嵌入页面的文档。没有什么特别的,只是突出显示元素。我知道这会引起严重的安全问题。 从子页读取的某些数据必须发送到我的服务器(与父页相同的域)

(请注意,尽管主题不同,此应用程序将完全是合法的商业服务,与任何灰色或黑色的伎俩或做法无关)

  • 有可能吗
  • 如果最终用户安装了我的扩展(为完成任务而编写的一些帮助功能),并信任我作为发布者,这是否有帮助
  • 如果以上这些都没有帮助,那么除了这个iframe想法,还有什么方法可以完成指定的任务吗
编辑


(该应用程序应该针对Chrome、FF和IE实现,我只是不能添加超过5个标签而已。)

一个选项是将DOM编辑移动到应用程序的后端

为了详细说明,一年前我做了一个类似的项目,我们还希望能够突出显示页面上的部分文本。我们将HTML加载到后端的iframe中,使用了一个模仿jQuery的库(在我们的例子中是pyquery),并在那里对DOM进行了修改。在我们的例子中,这只是在文本周围添加跨距以突出显示


这种方法的问题在于,您无法预测任意网站的DOM外观,因此应用程序将相当脆弱。即使是像在给定文本集周围放置span标记这样简单的事情也可能会破坏页面。

这可以通过Chrome扩展来完成。基本的想法是在父页面和嵌入页面中都注入一个,这将允许您与页面的内容交互。然后,您可以使用API在两个页面之间传递信息。

请注意,X-Frame-Options将快速停止“嵌入”想法。不幸的是,该应用程序应该以健壮的方式与每个网站配合使用……感谢您的回答。任何了解现有扩展的机会都可以证明类似的概念。(顺便说一句,该应用程序应该为Chrome、FF和IE实现,我只是无法添加超过5个标签…)