js_jquery获取不到页面元素 需要点击一下才能找到
2018-03-23 更新 更新内容:检查在获取的时候是不是使用class获取元素,如果是则修改为通过id获取元素。通过id获取元素是可以直接获取到的
以下为原文 ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 在项目中,尤其是后台管理常用到iframe嵌套,但是最近遇到一个问题。 我在页面上想要去获取页面的一个元素,却无法获取到元素 但是使用chrome自带的调试台去选中元素,然后再执行jquery方法,此时可以正常获取到元素 一开始想到可能是未来元素的原因,尝试过后发现并没有用处。 后来想到在form表单提交的时候如果有两层form嵌套,就会出现提交不了的现象。那会不会iframe嵌套也会出现这个问题呢? 当只使用一层iframe层时,也是可以正常获取元素的。那么两层的时候为什么会不行了呢? 查阅资料得知,当我们去获取元素时,js会默认在外层iframe中寻找元素,如果我们要寻找里层iframe的元素,必须要切换到指定iframe层中。
var obj=document.getElementById("mainframe").contentWindow; //填你的需要找到元素的那一层iframe的id
obj.document.getElementsByClassName("odd_bg");//我们可以对元素进行正常的操作了,我这里是寻找的class名,同理可以使用id等获取
1
2
3
2
3
编辑 (opens new window)
上次更新: 2024-11-06, 19:27:10