jQuery返回空,除非选择器前面有元素

时间:2018-10-15 04:50:03

标签: javascript jquery jquery-selectors

使用jQuery,我试图选择一个具有唯一ID的元素。我需要检查返回的jquery对象的长度,以查看该元素是否在页面上。

如果我写:

$('#main-content').length

我得到0。奇怪的是,元素在那里。相反,如果我写:

$('main#main-content').length

我要1。

我认为我不需要在选择器之前指定元素。知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

iframe基本上是与父级分开的独立文档。因此,搜索父项将不会从iframe中找到元素。

但是,这应该可行

$(document).ready(function(){
    var iFrameEl = $("iframe#frameID").contents();
    iFrameEl.find("#main-content").addClass('test');
});