jQuery获取iframe中的元素

最近在做iframe框架页面,遇到的一些问题,子类iframe框架的js不能操作父类页面的dom;

好在已经有前人探路。。。

1.js获取iframe中的元素

  1.1 js在父窗口中获取iframe中的元素

  方法1:

格式:window.frames["iframe的name值"].document.getElementById("iframe中控件的ID").click();
实例:window.frames["ifm"].document.getElementById("btnOk").click();

  方法2:

格式:  
var obj=document.getElementById("iframe的name").contentWindow;  
var ifmObj=obj.document.getElementById("iframe中控件的ID");  
ifmObj.click();  
实例:  
var obj=document.getElementById("ifm").contentWindow;  
var ifmObj=obj.document.getElementById("btnOk");  
ifmObj.click();

  1.2 js在iframe中获取父窗口的元素

格式:window.parent.document.getElementById("父窗口的元素ID").click();
实例:window.parent.document.getElementById("btnOk").click();

2.jQuery获取iframe中的元素

  2.1 jQuery在父窗口中获取iframe中的元素

  方法1:

格式:$("#iframe的ID").contents().find("#iframe中的控件ID").click();
实例:$("#ifm").contents().find("#btnOk").click();

  方法2:

格式:$("#iframe中的控件ID",document.frames("frame的name").document).click();
实例:$("#btnOk",document.frames("ifm").document).click();

  2.2 jQuery在iframe中获取父窗口的元素

格式:$('#父窗口中的元素ID', parent.document).click();  
实例:$('#btnOk', parent.document).click();

参考文章:https://blog.csdn.net/qq_33624558/article/details/82384020?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task