我在页面上有一个Iframe元素,我需要在Iframe内部创建一些原型方法。
我得到iframe window
var win = iframe.contentWindow || iframe.contentDocument.defaultView;
然后a尝试创建方法。在FF, Chrome和IE9+中很简单:
win.Object.prototype.func = myFunc;
但是它不能在IE8中工作。在win。object中没有定义。同时获胜。元素可以正常工作。
如何在IE8中获得iframe Object ?
您可以在iframe
中插入一个script
元素,这将在外部窗口中创建一个指向内部Object
的全局变量:
var doc = iframe.contentDocument,
s = doc.createElement('script');
s.text = "parent.Object2 = Object;";
doc.appendChild(s);
doc.removeChild(s);
则可以使用Object2.prototype
很简单。足以在iframe和对象中创建空脚本(如win。对象,赢了。元素等)在IE中可用