Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.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 访问;前";从不同域加载页面的iframe中的标记_Javascript_Iframe - Fatal编程技术网

Javascript 访问;前";从不同域加载页面的iframe中的标记

Javascript 访问;前";从不同域加载页面的iframe中的标记,javascript,iframe,Javascript,Iframe,我正在尝试将页面加载到iframe中。加载该页面时,我希望编辑加载文档中“pre”标记的内容。加载的文档来自另一个域。我使用的是:resultframe是iframe var atag= document.getElementById("resultframe").contentWindow.document.getElementsByTagName('pre'); atag[0].innerHTML="done"; 访问标签 问题:这种说法似乎没有效果。我需要知道正确的语法,也可以访问从不

我正在尝试将页面加载到iframe中。加载该页面时,我希望编辑加载文档中“pre”标记的内容。加载的文档来自另一个域。我使用的是:resultframe是iframe

var atag= document.getElementById("resultframe").contentWindow.document.getElementsByTagName('pre');
 atag[0].innerHTML="done";
访问标签

问题:这种说法似乎没有效果。我需要知道正确的语法,也可以访问从不同域加载的页面元素。我从网络上得到了语法,还有它的一些变体。
请建议。

你不能。出于安全原因,浏览器具有跨域策略


如果我将facebook页面包含在iframe中,并且我可以获取您的所有信息,因为您总是连接到它会怎么样?

虽然JavaScript受到跨域策略的限制,这些策略会阻止与另一个域的交互,但只要您能够接受某些限制,就有一种潜在的解决方法

通过使用类似的工具,您几乎可以从任何地方获取页面内容(即使是安全页面或需要登录的页面,只要您拥有凭据)。然后,您可以解析页面,编辑所需内容,并在自己的站点中显示它。不过,重要的是要认识到,这只是您自己的本地页面副本。您将无法真正更改页面本身的内容

另一种可能需要访问您希望编辑的所有域,那就是使用一个以PUT请求的形式接受编辑的。使用web服务可以实现更多的功能,但它必须在您希望更改的所有目标域上都可用


在不久的将来,这可能成为现实,并将带来跨来源资源共享(CORS)。CORS将允许一个域上的web应用程序向另一个域发出跨域AJAX请求。目标域将具有一个标头,该标头提供允许来自另一个域的请求的明确权限。这可能用于将编辑发送到其他站点。

您不能。Javascript有一个跨域策略,它也适用于具有跨域内容的iframe,因此您不能更改正在该iframe中加载的其他站点。