Leg*_*tin 4 javascript iframe postmessage
我在页面上有几个具有相同来源(但路径名不同)的iframe。
每个iframe message通过发出事件postMessage。
父窗口监听以下事件:
window.addEventListener('message', function(event) {
/* Get iframe element by event */
});
Run Code Online (Sandbox Code Playgroud)
我想为每个事件获取源iframe元素。
重要的限制是event.source.contentWindow由于跨域访问,我无法访问。
UPD:请在下面回答
解决方案是比较event.source和iframe.contentWindow:
function getFrameByEvent(event) {
return [].slice.call(document.getElementsByTagName('iframe')).filter(function(iframe) {
return iframe.contentWindow === event.source;
})[0];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
963 次 |
| 最近记录: |