jQuery $(this).find() 和 $(selector,this) 不起作用

2024-03-26

我在获取 jQuery 时遇到问题$(this)功能按预期工作......或者更确切地说,完全工作。据我了解,两者

$('.chamber').each(function(){
    $(this).find('.cell').slice(0,19).css('background-color','red');
});

and

$('.chamber').each(function(){
    $('.cell',this).slice(0,19).css('background-color','red');
});

应该做同样的事情:选择前 20 个(或 19 个?).cell每个中都有.chamber,并将它们设为红色。

不幸的是,实际发生的情况是它们都抛出相同的错误:

Uncaught exception: ReferenceError: Undefined variable: YName
Error thrown at line 19, column 8870 in <anonymous function: CLASS>(W, U, V, T, Z, aa) in jquery-1.3.2.min.js:
    if(Z^(YName&&(" "+YName+" ").indexOf(W)>=0))
called from line 19, column 3944 in <anonymous function: F.filter>(ad, ac, ag, W) in jquery-1.3.2.min.js:
    Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);
called from line 19, column 896 in <anonymous function>(Y, U, ab, ac) in jquery-1.3.2.min.js:
    af=F.filter(ae.expr,ae.set);
called from line 19, column 21013 in <anonymous function: F>(Y, X, V, W) in jquery-1.3.2.min.js:
    return T(Y,X,V,W)
called from line 12, column 5629 in <anonymous function: find>(E) in jquery-1.3.2.min.js:
    o.find(E,this[0],F);
called from line 169, column 3 in <anonymous function>():
    $(this).find('.cell').slice(0,19).css('background-color','red');
called via Function.prototype.call() from unknown location in <anonymous function: each>(G, K, F) in jquery-1.3.2.min.js:
    /* no source available */
called from line 12, column 2276 in <anonymous function: each>(F, E) in jquery-1.3.2.min.js:
    return o.each(this,F,E)
called from line 168, column 2 in <anonymous function>():
    $('.chamber').each(function(){
called from line 26, column 460 in <anonymous function: ready>():
    a.call(s,c);

我究竟做错了什么?


首先,你是对的,两种语法是等效的。

您的缩小版 jQuery 脚本似乎有问题。我从以下网站下载了同一个谷歌代码 http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js我找不到任何YName里面有变量。

我会冒险在这里打电话给GetElementsByName()由于某种原因出现了乱码。尝试使用脚本的新副本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery $(this).find() 和 $(selector,this) 不起作用 的相关文章