【问题标题】:iPad preventDefault action only on first link clickiPad 仅在第一次点击链接时阻止默认操作
【发布时间】:2012-06-14 09:34:27
【问题描述】:

我的页面上有一个链接,我希望它在 iPad 上的行为如下。

仅在第一次点击时,阻止默认操作(即不应遵循 href 操作),在后续点击时,遵循/允许默认操作(即应遵循 href 操作)。

我写的代码是:

if (navigator.userAgent.match(/iPad/i) != null)
{
var clickCount = 0;

$("a").click(function(event) { 
    if (clickCount == 0)
    {
        event.preventDefault(); 
    }   
    else{
        return true;
    }
    });
    clickCount++;
}

现在由于某种原因,即使是第一次点击,它也会跟随链接。我该如何解决这个问题?

【问题讨论】:

    标签: javascript jquery iphone ipad safari


    【解决方案1】:

    尝试将clickCount++;click-event 移到回调函数中。

    $("a").click(function(event) { 
        if (clickCount == 0){
            event.preventDefault(); 
        }   
        else{
            return true;
        }
        clickCount++;
    });
    

    ​ 目前,clickCount++; 在文档加载时被调用,并且在第一次触发事件时已设置为 1

    【讨论】:

    • 它是处理程序,而不是回调
    猜你喜欢
    • 2019-04-09
    • 1970-01-01
    • 1970-01-01
    • 2011-06-05
    • 2012-11-06
    • 2011-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多