Javascript 切换开关按钮的问题
我正在尝试用下面的代码创建一个自定义交换机系统Javascript 切换开关按钮的问题,javascript,jquery,Javascript,Jquery,我正在尝试用下面的代码创建一个自定义交换机系统 #left和#right功能都很好,但是我在#sw上遇到了一些问题,应该切换到左侧或右侧。如果用户选中,则单击此按钮必须显示“左”和“切换”按钮等 <div class="switchbox"> <div class="btn-group switch"> <button type="button" class="btn btn-default" id="left">Left</b
#left
和#right
功能都很好,但是我在#sw
上遇到了一些问题,应该切换到左侧或右侧。如果用户选中,则单击此按钮必须显示“左”和“切换”按钮等
<div class="switchbox">
<div class="btn-group switch">
<button type="button" class="btn btn-default" id="left">Left</button>
<button type="button" class="btn btn-default" id="sw">Switch</button>
<button type="button" class="btn btn-default" id="right">Right</button>
</div>
</div>
您能告诉我如何修复此问题吗?请检查此更新
我添加了一个额外的变量
toggle
来存储当前的切换位置。可以吗 谢谢Manun,我还需要5分钟来接受您的解决方案。但同时你能告诉我如何获取所选“左”或“右”按钮的ID或值吗?在哪个功能中获取ID?我不明白你的意思。我的意思是,如果用户点击左边或右边应该不难获得点击的btn的id,但切换按钮呢?如何知道选择了哪个开关,如是或否?实际上toggle
指向按钮。如果其值为1,则按钮为左,如果为0,则按钮为右。您可以使用toggle
变量找到该按钮。知道了?
var scrollWidth = 49;
var scrollWidthsw = 49;
var pos = 0;
$("p").html(pos);
$("#left").on("click", function () {
$(".switch").animate({
left: '-=' + scrollWidth
}, 300);
pos = pos - scrollWidth;
$("p").html(pos);
});
$("#right").on("click", function () {
$(".switch").animate({
left: '+=' + scrollWidth
}, 300);
pos = pos + scrollWidth;
$("p").html(pos);
});
$("#sw").on("click", function () {
if (pos == 0) {
pos = pos + scrollWidth;
$(".switch").animate({
left: '-=' + scrollWidthsw
}, 300);
} else {
$(".switch").animate({
left: '+=' + scrollWidthsw
}, 300);
}
});