dblclick功能与触摸设备上的tap功能不同

时间:2017-09-19 12:09:36

标签: javascript jquery html5 touchdevelop

我为我的网站编写了一些功能,发现单击时触摸设备上的功能与桌面上的功能不同。它在桌面上没问题但在触摸设备上没有。 我有一些关于它们的图像和标题,我想在第一次点击(点击)时显示每个图像的标题,然后通过dbl点击(dbl tap)转到为标记上的每个图像定义的href链接  这是我的js代码: 有人帮忙吗?

$('ul#portfolio-list li').click(function () {
    $('ul#portfolio-list li, ul#portfolio-list li a').addClass('grayscale');
    $('ul#portfolio-list li .project-label').removeClass('opacity1');
    $(this).addClass('it');
    $('ul#portfolio-list li.it , ul#portfolio-list li.it a').removeClass('grayscale');
    $('ul#portfolio-list li.it .project-label').addClass('opacity1');
    $(this).removeClass('it');
        return false;           
}).dblclick(function () {
    $(this).addClass('it');
    window.location.replace($('ul#portfolio-list li.it  a').attr("href"));
     return false;
});
//portfolio li tap in touch device//


var tapped = false
$("ul#portfolio-list li").on("touchstart", function (e) {
    if (!tapped) {
        tapped = setTimeout(function () {
            $('ul#portfolio-list li, ul#portfolio-list li a').addClass('grayscale');
            $('ul#portfolio-list li .project-label').removeClass('opacity1');
            $(this).addClass('it');
            $('ul#portfolio-list li.it , ul#portfolio-list li.it a').removeClass('grayscale');
            $('ul#portfolio-list li.it .project-label').addClass('opacity1');
            $(this).removeClass('it');
            tapped = null
        }, 300); //wait 300ms
    } else {
        clearTimeout(tapped);
        tapped = null
        $(this).addClass('it');
        window.location.replace($('ul#portfolio-list li.it  a').attr("href"));
    }
    e.preventDefault()
});

0 个答案:

没有答案