Jim*_*yce 18 javascript jquery jquery-plugins jquery-selectors
我正在使用Remy Sharp的jQuery标签插件,我想排除带有属性for和值的标签nature.
以下是代码工作的示例:
$(document).ready(function() {
$('form.default label').labelOver('over');
});
Run Code Online (Sandbox Code Playgroud)
而我正在努力做的事情:
$(document).ready(function() {
$('form.default label').not($('label').attr('for','nature')).labelOver('over');
});
Run Code Online (Sandbox Code Playgroud)
谁能看到我哪里出错了?感觉就像我非常接近我需要做的事情.
Mel*_*igy 26
attr 不是选择器,它是一个函数,它使用属性名称作为第一个参数获取属性值,或者如果将一个值作为2ng参数传递,则将其设置为新值.
此外,您在通过not电话选择label标签后排除了标签,因为选择器与所有标签匹配,attr正如我所说,没有过滤掉标签.
要根据属性进行选择,请使用以下命令:
$(document).ready(function() {
$("form.default label[for!='nature']").labelOver('over');
});
Run Code Online (Sandbox Code Playgroud)
正如您可能已经猜到的那样,[attribute='value']属性的选择器"等于"某个值,并且[attribute!='value']是它的"不相等"版本.
有关参考,请参阅:http:
//api.jquery.com/attribute-not-equal-selector/
有关所有选择器的参考:http:
//api.jquery.com/category/selectors/
这也在我的JavaScript和Web Dev Newsletter网站上引用.
.attr('for', 'nature')for将属性的值设置为nature
要按属性过滤,请使用[attribute="value"]:
$('form.default label').not('[for="nature"]').labelOver('over')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
62496 次 |
| 最近记录: |