如何根据另一个已存在的选择器选择元素?

时间:2012-08-19 10:19:08

标签: javascript jquery iframe document designmode

我有以下代码:

<html>
    <head>
        <script src="http://www.google.com/jsapi" type="text/javascript"></script>
        <script type="text/javascript">
        google.load("jquery", 1);
        </script>
        <script type="text/javascript">
            var rt, rt2;
            window.onload = function () {
                rt = $('#rt').contents().get(0);
                rt.designMode = 'On';
            }
        </script>
    </head>
    <body>
        <iframe id="rt" width="500" height="500"></iframe>
    </body>
</html>

rt目前正在选择整个iframe文档。我希望rt2选择文档元素中的body元素,这是rt选择的内容。我试过了:

rt2 = jQuery(rt, "html");
rt2 = jQuery(rt2, "body");

但它似乎没有用。怎么可能?

3 个答案:

答案 0 :(得分:2)

根据the documentation,要搜索的内容应该作为第二个参数提供,而不是第一个,所以请尝试这样做:

rt2 = jQuery("html", rt);

上下文可以是:

  

用作上下文的DOM元素,文档或jQuery

在内部,使用.find()方法实现上下文。所以上面的例子只是一个简短的说明:

rt2 = jQuery(rt).find("html");

答案 1 :(得分:1)

使用find

var myFrame = $('#rt').contents();
var myvar = myFrame.find('body');

答案 2 :(得分:1)

尝试:

rt2body = iframeElement.find("body");

进一步阅读.find:http://api.jquery.com/find/