我有两个具有不同I的图像,假设#pic1和#pic2。我尝试将两个选择器都添加到切换中,但它们都独立地切换相同的元素,所以当您单击第一张图片,然后单击第二张图片时,第二张图片不会切换回目标div,它会再次执行切换的第一部分。例如,如果假设向左滑动100px,然后向右滑动100px,则单击#pic1将向左滑动100px,但单击#pic2将再次向左滑动100px。有人能告诉我我应该朝哪个方向看吗?
$('#pic1,#pic2').toggle(
function()
{
$('#mylayer').delay(1000).animate({left: "+=100"});
$('#overlay').animate({opacity: 0.8});
},
function()
{
$('#mylayer').animate({left: "-=100"});
$('#overlay').delay(1000).animate({opacity: 0});
});发布于 2011-09-06 00:11:14
尝试像这样的东西,跟踪两次单击的打开/关闭状态一次,并使用jQuery的数据功能,以避免使用全局变量,并使其更具可扩展性,可在多个地方使用:
$('#pic1,#pic2').click() {
var mylayer = $("#mylayer");
var open = mylayer.data("open");
if (open) {
mylayer.animate({left: "-=100"});
$('#overlay').delay(1000).animate({opacity: 0});
mylayer.data("open", false);
} else {
mylayer.delay(1000).animate({left: "+=100"});
$('#overlay').animate({opacity: 0.8});
mylayer.data("open", true);
}
}https://stackoverflow.com/questions/7310282
复制相似问题