link 与 href=“#” 一起使用时将页面滚动到顶部 hammer.js

link with href=“#” scrolls page to top when used with hammer.js

我在 javascript 中使用锤子来附加事件,如下所示。

$('.get-stats').each(function() {
    Hammer(this).on('tap', function(e) {
        //my code
        window.location.href="http://myurl.com";
    });
});

我面临的问题是,当我单击或点击标签时,它首先导航到页面顶部,然后仅重定向到我的 url。 我试过 e.preventDefault();但它不起作用。

有什么想法吗??

删除 href="#",因为这是将您带到顶部的原因。

href="#" 替换为 href="javascript:void(0)"

这一定会有帮助。

您可以像

一样将 href 留空
<a class="get-stats" href="" style="-moz-user-select: none;">Get Stats</a>

因为你在 JS 中执行操作。

我猜 # 是这里的罪魁祸首。删除它,您的代码应该可以正常工作。