给定一个jQuery对象,$j我需要知道它是否表示已经在页面上的内容,或者它是否是尚未放在页面上的内容.例如,如果我有这个:
$j = $('#id-of-something-already-on-the-page');
Run Code Online (Sandbox Code Playgroud)
要么
$j = $('<p>Where is pancake house?</p>').appendTo($('#this-is-already-there'));
Run Code Online (Sandbox Code Playgroud)
然后我在页面上有一些东西,我不需要把它放在页面上.但是,如果我有这个:
$j = $("<p>I'll cook you some eggs, Margie.</p>");
Run Code Online (Sandbox Code Playgroud)
然后我需要在它出现在页面之前附加它.
问题是你如何询问$j它是否在页面上?我知道两种方式工作得很好:
$j.parent().length > 0暗示它在页面上.$j.index() > -1暗示它在页面上.我可以看到第一个失败,如果$j是html或可能的body; 我很高兴忽略这两个病理案例.我想不出第二种方法会失败的方式.
是否有一种标准技术来询问页面上是否有jQuery对象?我不在乎是否$j可见.