Touchstart点击事件不适用于iPhone / iPade

时间:2017-06-15 06:13:14

标签: jquery iphone click window.open touchstart

我写了一个事件,用jQuery打开新的浏览器标签(window.open),如下所示:

$(document).on('touchstart click', '.myClass', {self: this}, function (e) {

    var mylink = e.data.self.validateDomValue(this, 'attr=data-affiliate')

    if(myLink)
    {
        window.open(mylink, '_blank');
    }
});

这个脚本适用于Windows,Mac和iPad,但问题出现在iPhone上。该事件不会针对iPhone(版本:5,6和7)触发。我的错是什么?您的任何建议都将受到赞赏。

2 个答案:

答案 0 :(得分:2)

哦!是!我明白了。我需要使用css cursor:pointer。这对我有用。

if (/iP(hone|od|ad)/.test(navigator.platform)) 
{
    $(".myClass").css({"cursor":"pointer"});
}

答案 1 :(得分:0)

一旦我使用的元素位于“位置:固定”上,使用 css cursor:pointer 就对我不起作用。 我添加了一个“点击”事件监听器,它解决了这个问题。 单击该元素后,只会触发其中一个事件。