Jquery 单击一个弹出框会滚动回页面顶部[引导和Django]

Jquery 单击一个弹出框会滚动回页面顶部[引导和Django],jquery,django,twitter-bootstrap,Jquery,Django,Twitter Bootstrap,我在Django中使用bootstrap,到目前为止一切都正常。然而,我正在尝试使用popover功能,我一直遇到一个问题。每当点击我的弹出框,页面就会卷回顶部。。。但是,爆米花确实出现了。这是我的密码: //////////<..... a lot more HTML ....>////////// <div class="bs-docs-example"> <a href="#" class="btn btn-large btn-danger" rel="pop

我在Django中使用bootstrap,到目前为止一切都正常。然而,我正在尝试使用popover功能,我一直遇到一个问题。每当点击我的弹出框,页面就会卷回顶部。。。但是,爆米花确实出现了。这是我的密码:

//////////<..... a lot more HTML ....>//////////
<div class="bs-docs-example">
<a href="#" class="btn btn-large btn-danger" rel="popover" title="A Title" id="testpop" data-content="And here's some amazing content. It's very engaging. right?">Click to toggle popover</a>
</div>
{% endblock %}


{% block js %}
{{ block.super }}

{% bootstrap_javascript_tag "modal" %}
{% bootstrap_javascript_tag "alert" %}
{% bootstrap_javascript_tag "tooltip" %}
{% bootstrap_javascript_tag "popover" %}

<script type="text/javascript">
$("#testpop").popover();
</script>
////////////////////
{%endblock%}
{%block js%}
{{block.super}}
{%bootstrap\u javascript\u标记“modal”%}
{%bootstrap\u javascript\u标记“警报”%}
{%bootstrap\u javascript\u标记“工具提示”%}
{%bootstrap\u javascript\u标记“popover”%}
$(“#testpop”).popover();

非常感谢

您可以通过阻止锚元素的默认操作来解决此问题:

$('a#testpop').on('click', function(e) {e.preventDefault(); return true;});

这也可能是因为在popover(在chrome中测试)中有一个带有
autofocus=on
的元素造成的。

您可以将href=“javascript://”添加到锚定标记。

删除href=“#”标记,它应该可以工作。

我正在使用Bootstrap 2.3.2

重点不是点击。即使我通过编程调用show popover,它也会将我滚动到顶部

重点是引导工具提示显示功能。那里有一条线:

$tip.detach().css({top:0,left:0,display:'block'})

它在分离尖端时应用显示块,以获得其高度和宽度。这是一个形而上学的问题!不可见元素没有高度!!为了解决这个问题,我对该行进行了注释并添加了:

$tip.show();
就在它得到位置的那一行之后:

pos = this.getPosition()

这对我很有效。

我在Bootstrap v3.3.2中遇到了同样的问题,并通过使用按钮而不是锚定标签解决了这个问题


然后我返回到,发现除了一个popover示例外,其他所有示例都使用按钮——令人惊讶的是——使用锚的示例忽略了href属性

您可以将
href=“#…”
替换为
数据目标=“#…”

您需要防止
popover()处理程序中的默认事件操作。例如,
$('#testpop')。单击(函数(E){E.preventDefault();…})这是的副本。尽管这个问题是第一个被问到的,但这个问题似乎有一个更完整的答案。遗憾的是,这个答案中没有一个解决方案对我有效。Popover不仅可以为我滚动页面,还可以终止其他锚行为以及jquery ui日期选择器(有什么想法吗?如上所述,你可以检查这个相关的答案:他们建议使用div而不是锚点,这可能会有所帮助。在你的情况下,听起来你用来添加popover行为的选择器可能不够具体。可能值得针对你的情况提出一个新问题,并发布一些代码。找到并解决d除了最后一个关于popover的问题外,popover的其他问题会自动滚动到页面。我尝试了在中找到的每个解决方案以及其他一些解决方案,但都没有效果。将需要发布一个新问题:(请注意,根据Bootstrap文档,如果您使用的是可驳回的popover,则不应执行此操作。@Knyght-在版本3中,您可以删除
href
,但需要添加一些其他属性。有关详细信息,请参阅文档。这为我完全禁用了popover(Bootstrap 4),非常简单!并且没有更改浏览器中的URL。