是否可以在我的网站和其中的跨域iframe之间找到并比较一些文本字符串?
假设我有:
<html>
<body>
<div><p>hello world</p></div>
<iframe><html><body><div><p>hello world</p></div></body></html>
</body>
</html>
是否有可能建立一种查找和比较算法,以便能够检查我网站上的文字并将其与跨域iframe中的文字进行比较?我应该要求使用
postmessage
还是在浏览器屏幕内进行简单的文本查找和比较方面更简单的方法? 最佳答案
如果域不同,则在一帧中运行的Javascript函数将无法访问另一帧的DOM。您需要在两个框架中加载相同的方法。一种实现方法是在两个框架中加载find / compare JS函数,然后在一个框架中调用它。在当前帧中找到密钥后,然后通过postMessage
发送事件以在iframe中调用相同的函数。如果还在iframe中找到相同的密钥,则可以对找到该密钥的父框架执行postMessage
。
但是,如果域相同,则可以通过jQuery访问iframe的DOM,例如:
var iframeElementContents = $("#yourIFrame").contents();
现在,您可以在此元素上运行JS函数。
关于javascript - 在跨域iframe中查找文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27654892/