Jquery多类
为什么下面的代码只工作一次Jquery多类,jquery,jquery-ui,Jquery,Jquery Ui,为什么下面的代码只工作一次 $( document ).ready(function() { $(".fb.unselect").click(function(){ $(this).removeClass("unselect").addClass("select"); }); $(".fb.select").click(function(){ $(this).removeClass("select").addClass("unselect"); alert("
$( document ).ready(function() {
$(".fb.unselect").click(function(){
$(this).removeClass("unselect").addClass("select");
});
$(".fb.select").click(function(){
$(this).removeClass("select").addClass("unselect");
alert("hellp");
});
});
<li id="177200175" class="fb select">Donald Steele</li>
$(文档).ready(函数(){
$(“.fb.unselect”)。单击(函数(){
$(this.removeClass(“取消选择”).addClass(“选择”);
});
$(“.fb.select”)。单击(函数(){
$(this.removeClass(“select”).addClass(“unselect”);
警惕(“hellp”);
});
});
唐纳德·斯蒂尔
执行此类操作的更好方法是使用toggleClass
你的问题不是很清楚,但从字里行间看,我想你是在尝试这样做:
$(document).ready(function() {
$(".fb").toggleClass('selected');
});
这将产生这样的效果:当类“selected”不存在时将其添加,当它存在时将其删除。您可以使用css控制该类的存在方式。问题在于,您在文档加载时定义的函数仅在特定时刻绑定。因此,即使更改元素的类,它也不会神奇地自动绑定到另一个函数 因此,后一个函数总是被调用,它试图删除class
select
并添加classunselect
,这导致了一个问题,即该类只更改一次为unselect
,并一直保持这种状态,如您所说
要使用问题中的两个不同类修复示例,请执行以下操作,例如:
$(document).ready(function() {
$(".fb").click(function() {
if ($(this).hasClass('select')) {
$(this).removeClass('select').addClass('unselect');
} else {
$(this).removeClass('unselect').addClass('select');
}
});
});
这是一个。你说一次有效是什么意思?应该有多少次有效?