首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery移动点击事件

jquery移动点击事件
EN

Stack Overflow用户
提问于 2011-03-15 05:55:35
回答 2查看 28.5K关注 0票数 0
代码语言:javascript
运行
复制
$(function() {
    $('.quickNav').live('tap',function(event) {
        if ($(".select_body").is(":hidden")) 
        {
                $(".select_body").show(); 
        } 
        else 
        {
            $(".select_body").hide(); 
        }        
    });
});

它工作得很好,除了一旦它可见,你再次点击它就不会消失。

有什么想法?

EN

回答 2

Stack Overflow用户

发布于 2011-03-15 05:57:04

代码语言:javascript
运行
复制
$('.quickNav').live('tap',function(event) {
    $(".select_body").toggle(); //  toggles the visibility/display of the element.
});

这与冗长的if/else脚本的作用相同

请参阅jQuery API文档中的toggle method documentation

票数 15
EN

Stack Overflow用户

发布于 2013-04-09 07:55:29

一旦元素被隐藏,它的高度和宽度就为零。这意味着当你点击相同的位置时,你实际上不会再次点击该元素。

我建议将其不透明度设置为零。下面是你可以做的:

代码语言:javascript
运行
复制
$(function() {
    $('.quickNav').live('tap',function(event) {
        if ($(".select_body").is(":hidden"))
        {
            $(".select_body").css("opacity", 1);
        } 
        else 
        {
            $(".select_body").css("opacity", 0);
        }        
    });
});

以及相同行为的较短版本:

代码语言:javascript
运行
复制
$(function() {
    $('.quickNav').live('tap',function(event) {
        $(".select_body").css("opacity", 1 - parseInt($(".select_body").css("opacity")));
    });
});

我还没有真正测试过这段代码,所以我甚至不知道它是否能运行!

注意: fadeOut()将在其动画的末尾使用hide(),因此它在这里没有真正的帮助。

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

https://stackoverflow.com/questions/5305051

复制
相关文章

相似问题

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