Iframe跨域获取父页面URL参数
a.html?name="abc"
<script> function getJsUrl(){ var pos,str,para,parastr; var array =[] str = document.referrer; parastr = str.split("?")[1]; var arr = parastr.split("&"); for (var i=0;i<arr.length;i++){ array[arr[i].split("=")[0]]=arr[i].split("=")[1]; } return array; } var req = getJsUrl(); alert(req["name"]); </script>
JQuery
1. jquery 在iframe子页面获取父页面元素代码如下:
$("#id", parent.document) //获取父页面 $("#id")的元素
2. jquery在父页面 获取iframe子页面的元素
$("#id",document.frames('iframename').document) //获取子页面$("#id")的元素
JS
3.js 在iframe子页面获取父页面元素代码如下:
window.parent.document.getElementById("元素id");
4.js 在父页面获取iframe子页面元素代码如下:
window.frames["iframe_ID"].document.getElementById("元素id");
5、js在父窗口获取子窗口的window
$("#testiframe")[0].contentWindow == document.getElementById("testiframe").contentWindow == window.frames[0]
以上三种都可以获取子窗口的window
6.子类iframe内调用父类函数:
window.parent.func();
7.父类iframe内调用子类函数:
document.getElementById(子窗口 ifram 元素的ID值).contentWindow.子窗口中的方法()
1、jquery操作iframe中的元素(2种方式)
var tha = $(window.frames["core_content"].document).find("#trewuuu").html();
var thb = $("#core_content").contents().find("#trewuuu").html();
2、操作父界面中的元素(header:为某个元素的id)
$('#header', parent.document).text()
3、js调用iframe中的js函数(2种)
window.frames["core_content"].window.testIframe2("11");
document.getElementById("core_content").contentWindow.testIframe2("11");
4、jquery调用iframe的js函数(带参数的会有返回值)
$("#core_content")[0].contentWindow.testIframe2("11");
注意事项:
要和所包含的iframe在同一个域名(因为不能跨域)。
1,子iframe内调用父类函数方法: window.parent.func(); 2,子Iframe中获取父界面的元素: $("#xx", window.parent.document); 这个xx就是父界面中要获取的元素的ID。 3,jquery 调用子iframe页面中js的方法: iframefunction()是子页面的方法 $(window.parent.document).contents().find("#iframename")[0].contentWindow.iframefunction();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了