ie8下iframe其间互相调用取值
ie8下iframe之间互相调用取值
现在做b/s项目,基本都支持到ie8.就在写地图的时候,需要iframe的各个js互相调用。这个我真的是郁闷,ie8就是个坑,和别的浏览器不兼容。不过还好,找了好久,网上找到了解决办法,在此做下记录,以免以后丢失。
//取id为main的iframe中mapObj的值 window.parent.window.document.getElementById("main").contentWindow.mapObj; //取name为main的iframe的mapObj的值 parent.main.mapObj; //调用id为main的iframe中function() window.parent.window.document.getElementById("main").contentWindow.function(); //调用name为main的iframe中function() parent.main.function();
//取id为main的iframe的mapObj的值 $(window.parent.document).contents().find("#main")[0].contentWindow.mapObj; //调用id为main的iframe的function() $(window.parent.document).contents().find("#main")[0].contentWindow.function();
解析理解:
1、先获取当前页的上层的window对象。
2、在此对象 中取要操作的iframe(可以用js或者jQuery实现通过id、name、class)
3、在取当前对象的contentWindow属性,就是要操作的那个iframe的window对象了。
4、然后就可以点调用方法或者取值了