jquery - 禁用特定 div 上的滑动

标签 jquery jquery-mobile mobile

有了这个 jQuery Mobile 1.9.1 代码,可以在用户向右或向左滑动时显示侧面板...

$(document).on("pageinit",".ui-page",function(){

    var $page=$(this);
    $page.on("swipeleft swiperight",function(e){
        if($page.jqmData("panel")!=="open"){
            if(e.type==="swiperight"){
                $page.find("#menu").panel("open");
            }else if(e.type==="swipeleft"){
                $page.find("#menu2").panel("open");
            }
        }
    });
});

当使用具有滑动功能的图像 slider 时,这会产生问题。在 slider div 内,当我向右滑动时,它会更改为下一张照片并打开面板...

我刚刚尝试这样做:

    $('#full-width-slider').swipe(function(e){
        e.stopPropagation();
        e.preventDefault();
    });

但是根本不起作用。

有什么方法可以禁用 div #full-width-slider 内的 jQuery Mobile native 滑动功能吗?

提前致谢。

最佳答案

.on('swipeleft swiperight', function(e){

相对于

.swipe(function(e){

虽然我对这个答案不是 100% 有信心,但感觉试验表明代码仍然存在问题,您可能需要对原始元素进行健全性检查,例如,

if($.inArray('full-width-slider', $.trim($(e.target).prop('id')).split(' ')) > -1){
    //full with slider is the target, so return out 
}

关于jquery - 禁用特定 div 上的滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16180498/

相关文章:

javascript - 如何使用jquery计算数据?

javascript - header 访问控制允许来源 :* not working properly on Spring MVC

forms - JQuery 移动选择选项文本太长

javascript - 如何检查android浏览器中的URL是否包含给定的字符串?

qt - 我是否需要支付 Qt 许可证才能开发 Symbian 操作系统的商业应用程序?

javascript - 仅当在 HTML 表单中选择特定下拉列表时才需要该字段

php - 如何打印包含在页面中的 php 页面内容作为 jquery 弹出消息

javascript - 选择加载哪个JS文件不加载文件

javascript - 缺少 jQuery Mobile js 会扰乱我页面上的某些元素

html - 移动视口(viewport)