javascript - 尝试跨 iframe 选择元素

标签 javascript jquery html css iframe

我想选择我页面中的所有 DIV,包括它的子 iframe。

我这里有两个 DIV,但每当我尝试选择它们时,它只会捕获外面的一个。

<html>
    <head></head>
    <body>
    <div class='xx'>blah</div>

    <iframe id='x'>
        <html>
            <head></head>
            <body>
                <div class='xx'>blah2</div>
            </body>
        </html>        
    </iframe>
    </body>
</html>   

有什么方法可以让我取回两个 DIV 吗?

var a = $('.xx');

alert(a.length); //only gives me 1 :(

我的 fiddle 在这里:

http://jsfiddle.net/7kvFw/

最佳答案

仅通过一次调用,这是根本不可能的。 iframe 是另一个文档,因此无法直接访问。您需要分别搜索所有帧。

顺便说一下,您的示例无效。 iframe 只是对另一个文档的引用,您不能将内容放在同一个 html 文档中。如果您只关心一个带有滚动选项的“框”,只需添加另一个具有滚动能力的 div。这还允许您一次获取所有 .xx 元素。

另见 this fiddle .

关于javascript - 尝试跨 iframe 选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21906428/

相关文章:

javascript - 通过 javascript 更改相同的 css 类属性

javascript - promise 和周期

javascript - React Native 出错,不确定是什么

javascript - 为什么有时 scrollTop/scrollLeft 不可写?

jquery - Bootstrap 选择下拉列表显示控件上方的选定选项

asp.net - Ajax更新面板和Jquery的使用差异:ajax() method

javascript - 抓取 php 中的 &lt;textarea&gt; 值(HTML 形式)

javascript - ngStorage AngularJS 从 sessionStorage 读取由另一个库保存的内容

Javascript 视差在 Mac 上很慢

javascript - 如何获取 Javascript 中给定元素的非绝对 css 路径?