JQuery click让我回到页面顶部

时间:2017-07-27 10:40:41

标签: javascript jquery

我对jquery不太熟悉。我做了一个弹出窗口但是当我点击我设置弹出窗口的按钮时它会将我带到页面顶部。我试图阻止默认事件,但它对我不起作用。我不知道我哪里错了。这是我的代码:

 <script>
$(document).ready(function(e) {
  $('[data-toggle="popover"]').popover();
  e.preventDefault();
});
</script>

它只是几行所以想在html文件中写它。当我点击该按钮时,我该怎么做才能让它停留?

这是我的整个弹出代码:

<a href="#" data-toggle="popover" data-trigger="focus" title="Telefon" data-content="Call us: (123) 123 1234" class="btn btn-default" role="button">example</a>

3 个答案:

答案 0 :(得分:0)

您正在阻止document.ready事件的默认设置,而不是点击。你说你点击按钮来获取弹出框,所以你需要在click事件上阻止默认()。如果您发布popover()函数(它不是jQuery标准的AFAIK),我们可以帮助您进一步。

答案 1 :(得分:0)

不幸的是,您不会阻止代码中的任何内容。

$(document).ready(...)
一旦DOM完全加载,就会调用

。此时没有任何事件可以阻止。 您想要的是在单击实际的popover元素后阻止默认行为。你可以这样做:

$('[data-toggle="popover"]').on('click', function(e) {
  e.preventDefault();
  return true;
});

现在您的弹出窗口将按预期显示,滚动应该消失。

您也可以删除我在元素上定义假设href="#"部分。如果你不需要它就这样做!

答案 2 :(得分:0)

@BurakSümer,从href删除#并将其更改为:

href="javascript:void(0)"