这个问题的根源是我在我的函数的一部分使用“$”而在其他部分使用“jQuery”。它没有反映在提供的示例代码中,因为我没有直接转置我的代码,而是选择提供一个更简单的示例。获得的经验:按原样发布代码。问题自行投票删除。提供的答案虽然有用,但基本上展示了通过提供的代码示例实现已经实现的替代方法,我将其误认为是错误的。
我有一个按钮。当它被点击时,我需要删除我正在使用的类,以便首先选择它。
按钮在“关闭”时呈红色,在“开启”时呈绿色。
该课程未被删除。
$("body").on("click", ".button_off", function(){
alert("Selected and new class applied.");
$(this).removeClass( "button_off" );
$(this).addClass( "button_on" );
});
//Target the button when clicked when on...
$("body").on("click", ".button_on", function(){
alert("Unselected and new class removed.");
$(this).removeClass( "button_on" );
$(this).addClass( "button_off" );
});
*编辑:编辑上面的代码以包含“。”对于“.button_off选择器。之前由于转置错误而省略。*
单击上述课程时如何删除课程?
答案 0 :(得分:0)
$("body").on("click", ".button_off", function(){
alert("Selected and new class applied.");
$(this).removeClass( "button_off" );
$(this).addClass( "button_on" );
});
//Target the button when clicked when on...
$("body").on("click", ".button_on", function(){
alert("Unselected and new class removed.");
$(this).removeClass( "button_on" );
$(this).addClass( "button_off" );
});
如果这不起作用,您是否尝试过这样的方法?
$(".button_off").click(function(){
alert("Selected and new class applied.");
$(this).removeClass( "button_off" );
$(this).addClass( "button_on" );
});
//Target the button when clicked when on...
$(".button_on").click(function(){
alert("Unselected and new class removed.");
$(this).removeClass( "button_on" );
$(this).addClass( "button_off" );
});
答案 1 :(得分:0)
你忘记了“。”在以下行:
$("body").on("click", ".button_off", function () { ...
答案 2 :(得分:0)
而是可以尝试使用.toggleClass()
尝试两件事:
$("body").on("click", '[class^="button"]', function(){
$(this).toggleClass( "button_on button_off" );
});
答案 3 :(得分:0)
你不会选择什么选择器,你的意思是什么?“$('body')”,你需要在按钮上选择它,这样你就可以这样做:
$(document).ready(funcntion(){
$('.button-on').click(function(){
$(this).removeClass( "button_on" );
$(this).addClass( "button_off" );
});
});
或者你可以从Jquery使用Css
$(document).ready(funcntion(){
$('.button-on').click(function(){
$(this).css('background-color','red!important');
});
});
并检查浏览器控制台以查看是否有任何错误。
此致
答案 4 :(得分:0)
您可以按以下方式定位两个州(类),并根据当前班级更改班级。
此示例允许您根据需要包含更多功能。例如。你的警报。
$(".button_on, .button_off").on("click", function(){
var $me = $(this);
if ($me.hasClass("button_on")) {
alert("Unselected and new class removed.");
$me.removeClass( "button_on" );
$me.addClass( "button_off" );
} else {
alert("Selected and new class applied.");
$me.removeClass( "button_off" );
$me.addClass( "button_on" );
}
});
更好的是,如果您只需要通过更改可以使用的类来更改按钮的样式:
$(".button_on, .button_off").on("click", function(){
$(this).toggleClass( "button_on button_off" );
});
答案 5 :(得分:0)
在您的代码中:
$("body").on("click", "button_off", function(){
...
...
}
你错过了班级名称前的点(.
)。
尝试使用此代码:
$("body").on("click", ".button_off", function(){
alert("Selected and new class applied.");
$(this).removeClass("button_off");
$(this).addClass("button_on");
});
//Target the button when clicked when on...
$("body").on("click", ".button_on", function(){
alert("Unselected and new class removed.");
$(this).removeClass("button_on");
$(this).addClass("button_off");
});
答案 6 :(得分:0)
$(".button_off").click(function(){
$(this).addClass("button_on" );
$(this).removeClass("button_off" );
});
$(".button_on").click(function(){
$(this).addClass("button_off" );
$(this).removeClass("button_on" );
});
你可以试试上面的代码