jQuery.contains()无法正常工作

在下列情况下我应该得到“警报”,但我没有得到任何“警报”。 我正在尝试一个简单的jQuery.Contains()示例。

     $(document).ready(function() { var alpha = $.contains('body','p') { alert(alpha); });    

This is a paragraph.

根据jQuery 文档 ,API只接受元素节点(不是JavaScript / jQuery 对象选择器

检查DOM元素是否是另一个DOM元素的后代。

仅支持元素节点; 如果第二个参数是文本或注释节点,$ .contains()将返回false。

注意:第一个参数必须是DOM元素,而不是jQuery对象或纯JavaScript对象。

你应该将代码更改为

 $(function () { alert($.contains(document.body, $("p")[0])) //alerts true alert($.contains(document.body, document.getElementsByTagName("p")[0])); //alerts true }) 

试试这个:

 $(document).ready(function(){ var alpha = $.contains(document.body,$("p")[0]) if (alpha) { alert(alpha); } }); 

DEMO

参数总是DOM元素,而不是简单的文本。

有关详细信息,请参阅此处。

jQuery.contains只返回boolean ,doe没有回调。 试试这个代码。

 $(document).ready(function(){ alert($.contains(document.body,$('p')[0])); }); 
 Use this code you have error on this line (var alpha = $.contains('body','p'){)       

This is a paragraph.