jQuery找到$.find(‘selector’)与$(‘selector’)的区别

前端之家收集整理的这篇文章主要介绍了jQuery找到$.find(‘selector’)与$(‘selector’)的区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个问题,为什么这两个代码片段不同。
$('#ctl00_DDMenu1_HyperLink1')  
//jQuery(a#ctl00_DDMenu1_HyperLink1 Default.aspx) Console output
$('#ctl00_DDMenu1_HyperLink1').text()

上面的代码返回:一些链接文本

$.find('#ctl00_DDMenu1_HyperLink1')  
//[a#ctl00_DDMenu1_HyperLink1 Default.aspx] Consolee output
$.find('#ctl00_DDMenu1_HyperLink1').text()

返回

TypeError: $.find("#ctl00_DDMenu1_HyperLink1").text is not a function

这是否意味着$ .find返回Array对象[]和jQuery函数不可访问?

//编辑

我用过jQuery 1.4.2&使用Firebug控制台。

//练习回答

这个代码将返回jQuery对象引用,所有的jQuery函数都可以访问。

$( ‘any_selector’)
//jQuery(item1),jQuery(item2),…,jQuery(item-N)控制台输出
$( ‘any_selector’)。文本()

代码返回JavaScript Array对象,因此jQuery的任何函数都不能应用于结果集。即使结果集似乎相同。

$ .find( ‘any_selector’)
//[item1,item2,item-N] Consolee输出
$ .find( ‘any_selector’)。文本()

但是我们可以做一些技巧(奇怪的技巧)来将js数组写入jQuery选择器:

$($。找到( ‘any_selector_as_inner_select’))。VAL()

//谢谢你的帮助!

解决方法

因为find()可以根据您已经做出的选择对一组元素进行过滤。例如,如果要选择特定表单中的所有输入,您可以写:
$('#aParticularForm').find('input')

它不能自己调用​​。

猜你在找的jQuery相关文章