Javascript 局部变量(在函数中)到全局变量(Jquery)
我有四个Javascript 局部变量(在函数中)到全局变量(Jquery),javascript,jquery,Javascript,Jquery,我有四个标记,当我点击按钮标记时,我需要它,jQuery添加类活动的 这是我的代码: $(document).ready(function () { var btnActive; $(".cont-btn button:nth-of-type(1)").click(function () { btnActive = 1; }); $(".cont-btn button:nth-of-type(" + btnActive + ")").click(f
标记,当我点击按钮标记时,我需要它,jQuery添加类活动的
这是我的代码:
$(document).ready(function () {
var btnActive;
$(".cont-btn button:nth-of-type(1)").click(function () {
btnActive = 1;
});
$(".cont-btn button:nth-of-type(" + btnActive + ")").click(function () {
for (i = 0; i <= 4; i++) {
if (i === btnActive) {
$(".cont-btn button:nth-of-type(" + btnActive + ")").addClass("active");
} else {
$(".cont-btn button:nth-of-type(" + i + ")").removeClass("active");
}
}
});
});
$(文档).ready(函数(){
var btnActive;
$(“.cont btn按钮:第n个类型(1)”。单击(函数(){
btnActive=1;
});
$(“.cont btn按钮:第n个类型(“+btnActive+”)。单击(函数(){
对于(i=0;i,您正在使它变得比需要的更复杂
假设
在class=“cont btn”
有一种更简单的方法来处理此问题。单击按钮时,请删除感兴趣的按钮,然后将其添加到单击的元素中:
$(".cont-btn").click(function () {
$(".cont-btn").removeClass("active");
$(this).addClass("active");
});
$(“.cont btn按钮:第n个类型(“+btnActive+”)
此代码仅执行一次
您的代码可能是这样的
$('.cont-btn button:eq(0)').addClass('active');
$('.cont-btn button').click(function() {
$('.cont-btn button').removeClass('active');
$(this).addClass('active');
})
另外,我猜你误解了事件处理程序的工作原理。我建议你多读一些这方面的内容。JS中的执行流程不容易掌握。我在控制台中发现了这个错误,这是错误的根源,但不是创建第二次单击事件时的实际错误选民无效。这是错误行$(“.cont btn button:n类型(“+btnActive+”)。单击(函数(){
非常感谢,我是一个延迟:facepalm:
$('.cont-btn button:eq(0)').addClass('active');
$('.cont-btn button').click(function() {
$('.cont-btn button').removeClass('active');
$(this).addClass('active');
})