首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery第二次点击交互不起作用?

jQuery第二次点击交互不起作用?
EN

Stack Overflow用户
提问于 2012-02-05 20:05:38
回答 1查看 435关注 0票数 0

http://jsfiddle.net/motocomdigital/uTV5k/18/

我已经更新了使用切换,而不是点击-尽管仍然不能得到顺利的交替。

这里混合了javascript和jquery。

我试图获得一个元素,所以当它被点击时,它会运行一个动画(打开)。在第二次单击时,动画运行到起始点(关闭)。

但由于某些原因,我无法让第二次点击交替工作。有人能告诉我我做错了什么吗?谢谢

$('.home-module').toggle是我遇到问题的地方。

见下面的剧本..。

代码语言:javascript
复制
$(window).load(function(){

    $(window).bind("orientationchange resize", function(e) {

        $('.home-module').each(function() {

            var homeModule  = $(this).height(),
                homeTitle   = $(this).find('.home-title-button').outerHeight(),
                homeStart   = homeModule - homeTitle,
                homeOpen    = false;

            $(this).find('.home-title').css("top", homeStart + "px");

            $('.home-module').toggle(
                function() {
                    // first alternation
                    $(this).find('.home-title').animate({ top: homeStart + "px" });
                },
                function() {
                    // second alternation
                    $(this).find('.home-title').animate({ top: 0 + "px" });
                }
            );

        }); 

    }).trigger("resize");

});

在点击动画时,它似乎真的没有反应,第二次点击/交替真的被延迟了,并且做了一些奇怪的事情吗?

谢谢

我的原始密码..。

代码语言:javascript
复制
$(window).load(function(){

    $(window).bind("orientationchange resize", function(e) {

        $('.home-module').each(function() {

            var homeModule  = $(this).height(),
                homeTitle   = $(this).find('.home-title-button').outerHeight(),
                homeStart   = homeModule - homeTitle,
                homeOpen    = true;

            $(this).find('.home-title').css("top", homeStart + "px");

            $('.home-module').on('click', function () {

                if (homeOpen) {

                    $(this).find('.home-title').animate({ top: homeStart + "px" });
                    homeOpen = false;

                } else {

                    $(this).find('.home-title').animate({ top: 0 + "px" });
                    homeOpen = true; 

                }
            });

        }); 

    }).trigger("resize");

});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-05 20:08:56

homeOpen总是设置为false,因此您的if (homeOpen)条件永远不会满足。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9152543

复制
相关文章

相似问题

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