如何用 iframe 中的 JavaScript 获取 iframe 本身的 ID 或 name

如题所述

这个要看有没有选择器了

如果有的话 比如 iframe  的id name class 获取其它标签都可以

有的话下面 比如这是a页面 叫index.html

<html>

<head>
<style>
body{
width:100%;
}
#emmm{
height: 200px;
    width: 200px;
}
</style>

<body>
<iframe src="

</body>
</head>
</html>

b页面 叫fuben.html

<html>

<head>
<style>
body{
width:100%;
}
#emmm{
height: 100px;
    width: 100px;
border:1px solid #ddd;
}
</style>

<body>
</body>

<script>

var cc = window.parent.document.getElementsByTagName("iframe");
for ( var i=0;i<cc.length;i++ ) {
    if(cc[i].getAttribute("date-m") == "2333"){
alert(cc[i].getAttribute("id")+"/"+cc[i].getAttribute("name"));  
}
}

</script>

</head>
</html>


<!--
window.parent.document.getElementsByTagName("iframe")
这个代表获取父页面所有 iframe 
然后循环所有iframe 
判断当前iframe 的自定义属性  
判断他等不等于定的
getAttribute就是获取属性的  
(如果有id name class的话直接用值.getAttribute("id");就可以)
-->

//如果没有能判定的只知道是个iframe
//修改script代码


var cc = window.parent.document.getElementsByTagName("iframe");
for ( var i=0;i<cc.length;i++ ) {
    if(cc[i].getAttribute("src") == window.location.href){
alert(cc[i].getAttribute("id")+"/"+cc[i].getAttribute("name"));  
}
}

//还是获取父页面所有iframe
//循环
//判断父页面iframe的src 是否等于当前的url   这里只写了全url 如果相对路径还要截取
//当前iframe 如果url和src相同输出当前的 id和name

parent不可以跨域 如果想要跨域来做什么修改就不要想了

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-09-11
获取id一般用 document.getElementById
第2个回答  2020-02-24
可以直接在iframe中执行,window.name
这个就是当前iframe的name了
相似回答