此处破解代码的工作版本http://jsfiddle.net/Uey6W/8/
无法确定如何更改另一个元素的属性形成点击功能
狙击
$('#black').click(function() {
$('#blackbox').slideToggle('slow', function() {});
$('#yellowbox').slideUp();
});
这里点击我希望不仅隐藏其他元素,还要还原其他按钮
基本上,当另一个按钮切换到打开状态时,如何将另一个按钮切换到关闭状态
$("#black").toggle(
function () {
var src = $(this).attr("src").replace("ready.png", "pressed.png");
$(this).attr("src", src);
},
function () {
var src = $(this).attr("src").replace("pressed.png", "ready.png");
$(this).attr("src", src);
}
);
$('#black').click(function() {
$('#blackbox').slideToggle('slow', function() {});
$('#yellowbox').slideUp();
});
$("#yellow").toggle(
function () {
var src = $(this).attr("src").replace("ready.png", "pressed.png");
$(this).attr("src", src);
},
function () {
var src = $(this).attr("src").replace("pressed.png", "ready.png");
$(this).attr("src", src);
}
);
$('#yellow').click(function() {
$('#yellowbox').slideToggle('slow', function() {});
$('#blackbox').slideUp();
});
答案 0 :(得分:1)
从我在api reference看到的内容,切换不会将两个函数作为参数。你将一个空函数传递给slideToggle(只是将空函数省略为一个参数,如果这是意图)。看起来你的思路很正确,只有一些错误。
编辑:看错了切换。正确的文档here。
答案 1 :(得分:0)
一直在我的脸上回答是为了恢复其他按钮我只是改变了点击声明
$('#black').click(function() {
$('#blackbox').slideToggle('slow', function() {});
$('#yellowbox').slideUp();
$('yellow').atr('src', ready.png)
});
答案 2 :(得分:0)
通过这样做,你几乎可以完成同样的事情:
var btn1 = "ready.png",
btn2 = "pressed.png";
$("#black, #yellow").on('click', function() {
$("#black, #yellow").not(this).prop('src', this.src);
this.src = this.src==btn1 ? btn2 : btn1;
$('#'+this.id+'box').slideToggle('slow').siblings('div').slideUp('slow');
});