Pet*_*per 2 html javascript css jquery
我目前正在开发关于构建交互式网站的codecademy课程,我偶然发现了关于使用css元素的元素/类选择的模糊性.
JavaScript的:
var main = function() {
$('.article').click(function() {
$('.article').removeClass('current');
$('.description').hide();
$(this).addClass('current');
$(this).children('.description').show();
});
};
Run Code Online (Sandbox Code Playgroud)
CSS:
.current .item {
background: rgba(206,220,206,.9);
}
Run Code Online (Sandbox Code Playgroud)
为什么我必须在第4行使用元素选择器'current'而不是类选择器'.current'?它背后是否有任何规则或仅仅是jquery的规范?
voi*_*oid 10
只是因为班级的名字current
不是.current
,而且在
$('.article').removeClass('current');
Run Code Online (Sandbox Code Playgroud)
current
不是任何选择器,而只是classname
你要删除的选择器,而不是选择器.article
.
您认为我们使用的是元素选择器而不是类选择器.但你错了.你在删除Class中看到Class这个词并添加Class吗?这意味着您传递的是类选择器,而不是元素选择器作为参数.
现在你可能会问为什么你看不到当前的点?因为类是使用点指定的.实际上我们已经指定我们正在传递类选择器,因为你可以在删除Class中看到单词"Class" 并添加Class.