也许我错过了什么,但无论我读它是建议,如果我想查一个jQuery构造函数是否返回一个jQuery对象是通过完成:检查jQuery对象中有html元素
if(jQuery('.something').length){...}
但我将如何验证它是否是它返回的jQuery对象中的html元素?
我的意思是,这也将返回true:
if(jQuery(44551).length){...}
虽然它返回jQuery对象它不具有HTML元素在里面。
也许我错过了什么,但无论我读它是建议,如果我想查一个jQuery构造函数是否返回一个jQuery对象是通过完成:检查jQuery对象中有html元素
if(jQuery('.something').length){...}
但我将如何验证它是否是它返回的jQuery对象中的html元素?
我的意思是,这也将返回true:
if(jQuery(44551).length){...}
虽然它返回jQuery对象它不具有HTML元素在里面。
你可以使用is()
检查,如果集合包含一定的选择
var someelement = $(....); // unknown
if (someelement.is('.something')) {...
相匹配的元素根据选择器,元素, 或jQuery对象检查当前匹配的元素集,并返回true,如果这些元素中的至少一个为 匹配给定的参数。
好的解决了我的问题。 $('。never-mind')。is('。never-mind')'返回true(当然,在验证.never-mind存在之后),并且$(555).is(555)'返回false 。谢谢你,小伙伴 –
要检查是否有一个jQuery元素中的HTML元素,然后执行:
if ($('.el').html().length) { ...
如果我向jQuery选择器提供一个数字,那么你的代码会抛出一个错误,我可以将它包装在一个try-catch语句中,但@ adeneo的解决方案更简单。谢谢。 –
jQuery的选择器只返回HTML元素。 –
但如果我向jQuery构造函数提供一个数字,它将不会返回html元素。 –