• jquery、js调用iframe父窗口与子窗口元素的方法整理


    1. jquery 在iframe子页面获取父页面元素代码如下:

    $("#objid", parent.document)

    例子

    var obj = $(".tabs .tab_selected", parent.document);
    var iframeid = obj.attr("id");

    2. jquery在父页面 获取iframe子页面的元素

    代码如下:

    $("#objid",document.frames('iframename').document)

    3.js 在iframe子页面获取父页面元素代码如下:

    indow.parent.document.getElementByIdx_x("元素id");

    4.js 在父页面获取iframe子页面元素代码如下:

    window.frames["iframe_ID"].document.getElementByIdx_x("元素id");

    5.子类iframe内调用父类函数:

    window.parent.func();

    用原生js在父页面获取iframe子页面的元素,以及在子页面获取父页面元素,这是平时经常会用到的方法,这里写一个例子来总结下:

    1、父页面(demo.html),在父页面修改子页面div的背景色为灰色,原来为红色:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    	<title>demo主页面</title>
    	<script type="text/javascript">
    	window.onload = function(){
    		var _iframe = document.getElementById('iframeId').contentWindow;
    		var _div =_iframe.document.getElementById('objId');
    		_div.style.backgroundColor = '#ccc';
    	}
    	
    	</script>
    </head>
     
    <body>
     
    <div id='parDiv'>父页面</div>
    <iframe src="demo-iframe.html" id="iframeId" height="150" width="150"></iframe>  
    </body>
    </html>
    

      


    2、子页面(demo-iframe.html),在子页面修改父页面div的字体颜色为红色,原来为黑色:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    	<title>子页面demo13-iframe.html</title>
    	<script type="text/javascript">
    	window.onload = function(){
    		var _iframe = window.parent;
    		var _div =_iframe.document.getElementById('parDiv');
    		_div.style.color = 'red';
    	}
    	</script>
    </head>
     
    <body>
    	<div id='objId' style='100px;height:100px;background-color:red;'>子页面</div>
    </body>
    </html>
    

      

    3、效果图:

    (1)没有加入js时的效果图:

    (2)加入js后的效果图:

  • 相关阅读:
    Netcat实用操作
    Golang的面向对象实践method
    将大数组里面的小数组平行展开的实现(Making a flat list out of list of lists in Python)
    bootstrap table表格加载本地数据
    扎职扎职扎职扎职扎职扎职扎职扎职扎职扎职扎职
    java使用poi导出excel防止数字变成科学计数法的形式
    element-ui中搜索框回车刷新页面问题的解决方法
    范式建模的理解
    svn去除java编译后文件配置
    java中使用sublist方法获取list集合的前1000条数据
  • 原文地址:https://www.cnblogs.com/yamajia/p/9364048.html
Copyright © 2020-2023  润新知