查找页面的第一个节点?

时间:2011-03-25 08:51:38

标签: javascript jquery html

这是我的jQuery代码:

$('body').append('<div id="popupContact"><a id="popupContactClose">close</a><br/><iframe src="http://google.com"></iframe></div><div id="backgroundPopup"></div>');

我在this网站进行了测试。

虽然有效,但我遇到了问题。我认为该网站有很多iframe,所以我想找到合并页面的第一个主体。我试过这段代码。

$('body')[0].append('<div id="popupContact"><a id="popupContactClose">close</a><br/><iframe src="http://google.com/" id = myFrame></iframe></div><div id="backgroundPopup"></div>');

但不幸的是它不起作用。

我想将规则仅应用于第一个正文标记。

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

试试这个:

$('body').first();

或者这个:

$('iframe').first();

答案 1 :(得分:1)

您可以尝试$('body:first')。有关详细信息,请参阅http://api.jquery.com/first-selector

答案 2 :(得分:0)

我也试图这样做,但发现$('body:first')和$('body')。first()仍然抓住了页面上每个iframe的第一个节点。

基本上我试图做的是添加一个div。使用top.document.body是我解决问题的原因。如:

top.document.body.appendChild(mydiv); 

正如本页所指出的,我正在寻找页面的“真实”主体: How to refer to the true 'body' of a page? [NOT iFrame body]