【问题标题】:JS that should listen for pinch in and pinch out not working应该听捏捏和捏出的JS不起作用
【发布时间】:2013-03-17 22:34:09
【问题描述】:

我正在尝试在捏合身体时执行一个功能,然后在捏合时执行另一个功能。 由于我已经在本文档中使用 jquery.hammer.js 并且hammer 可以监听进出捏,我认为最好使用它来监听捏。 但是,我暂时不运行这些函数,而是运行警报。

这似乎应该可以工作,但是当我捏捏捏捏时,不会触发警报。

我做错了什么?

这是我的代码:

<!Doctype HTMl>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>Pinch me!</title>
    </head>
    <body>

        <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
        <script type="text/javascript" src="//raw.github.com/EightMedia/hammer.js/master/dist/jquery.hammer.min.js"></script>
        <script type="text/javascript">
        var element = $('body').get();
        var hammertime = Hammer(element).on("pinchin", function(event) {
            alert("pinch in!");
        });
        var hammertimes = Hammer(element).on("pinchout", function(event) {
            alert("pinch out!");
        });
        </script>
    </body>
</html>

如果能帮助我在捏合和捏出时触发这些警报,我将不胜感激。

【问题讨论】:

    标签: javascript jquery multi-touch gestures hammer.js


    【解决方案1】:

    我认为您的脚本格式错误? .get() 用于进行 Ajax 调用。要选择一个元素,只需将其包装在 jQuery 选择器中即可。

    尝试像这样设置元素 -

    var element = $('body');
    

    在这个简单的示例中,我也不清楚为什么要将捏事件绑定到变量,但它不应该阻止它工作。

    【讨论】:

    • 啊,我不知道。我不知道可以在 jQuery 选择器中包装一个元素。我将事件限制为变量,因为文档确实如此。但是,它仍然无法正常工作。
    • 夹点可能不会在 body 元素上注册。我会尝试在页面中添加一些元素并将捏合到它们上。
    • 我没有想到,但我试过了,但并没有什么不同:-(
    • 您还有其他想法吗?到目前为止,我有什么和什么不起作用,在the-irf.com/pinch.html
    • @IMUXIxD 为什么你把它标记为答案,但在 cmets 中很明显这对你不起作用?!?
    【解决方案2】:

    这里不需要 jQuery。只需使用Hammer(document.body).on(...)

    【讨论】:

    • 啊,好吧。谢谢你。除了,它仍然无法正常工作。这是一个活生生的例子:the-irf.com/pinch.html
    猜你喜欢
    • 1970-01-01
    • 2013-03-21
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-15
    • 2015-03-11
    • 1970-01-01
    相关资源
    最近更新 更多