首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用多个选择器的Jquery切换

问使用多个选择器的Jquery切换
EN

Stack Overflow用户
提问于 2011-09-05 23:52:34
回答 1查看 1.5K关注 0票数 0

我有两个具有不同I的图像,假设#pic1和#pic2。我尝试将两个选择器都添加到切换中,但它们都独立地切换相同的元素,所以当您单击第一张图片,然后单击第二张图片时,第二张图片不会切换回目标div,它会再次执行切换的第一部分。例如,如果假设向左滑动100px,然后向右滑动100px,则单击#pic1将向左滑动100px,但单击#pic2将再次向左滑动100px。有人能告诉我我应该朝哪个方向看吗?

代码语言:javascript
复制
$('#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});
});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-06 00:11:14

尝试像这样的东西,跟踪两次单击的打开/关闭状态一次,并使用jQuery的数据功能,以避免使用全局变量,并使其更具可扩展性,可在多个地方使用:

代码语言:javascript
复制
$('#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);
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7310282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档