jQuery Mobile taphold事件触发浏览器对话框

时间:2011-09-13 09:27:29

标签: jquery android jquery-plugins

我遇到了taphold事件的问题。

我将taphold事件绑定到图像上。当我动态点击图像时,android web浏览器会激活一个对话框,其中包含“另存为图像”,“设置为壁纸”,“共享图像”命令。

我想在使用taphold事件时禁用图像处理命令对话框。

有可能吗?

3 个答案:

答案 0 :(得分:1)

我发现你必须禁用右键单击。

$(function(){

    document.oncontextmenu = function() {return false;};

    $(document).mousedown(function(e){

        if ( e.button == 2 )
        { 
            alert('Right mouse button!'); 
            return false; 
        }

        return true;
    });
});

答案 1 :(得分:0)

调用e.preventDefault()以防止弹出对话框。

$page.bind("pageinit", function () {
    $("a").bind("taphold", function (e) {
        // your code
        e.preventDefault();
    });
});

编辑:

如何绑定到img呢?

$page.bind("pageinit", function () {
    $("img").bind("taphold", function (e) {
        // your code
        e.preventDefault();
    });
});

答案 2 :(得分:0)

是的,这是可能的。我通过以下代码清除了同样的问题

constraintTableViewHeight.constant = 150;//this will change height

self.view.layoutIfneed(); // this will apply updated constraints to whole view