在点击触发Twitter Bootstrap模态框的链接时,浏览器会向上滚动页面。这种行为只会出现在Chrome浏览器中。
这是一个示范页面:
http://www.turizmburosu.com/test2.aspx
该页面有600行链接,导致页面正文超过窗口高度。如果点击任何一个链接,都会显示模态对话框。在Chrome中,当点击初始视图下方的任何链接时,背景页面会向上滚动(不总是完全滚动到顶部)。
我正在使用以下函数来触发模态框的显示:
function test(id, imp) {
$("#modalLabel").html("Header");
$("#modalBody").html("Body");
$("#myModal").modal("show");
}
链接的格式为:
<a href="" onclick="test();return false;">Test Link ###</a>
我在Chrome 22.0.1229.94 m中发现了这种行为。
有什么建议/想法是为什么会发生这种情况以及如何防止它?
补充示例
可以在Modal插件的Twitter Bootstrap文档页面上重现此问题。
进入页面后,只需覆盖现有的data-api以使用JavaScript api即可:
$('#modals a[data-toggle="modal"]').on('click',
function(e) {
$('#myModal').modal('toggle');
return false
});
如果点击启动演示模态框按钮,当出现模态框时页面会向上滚动。
同样,这是在使用Chrome浏览器的情况下。
$.support.transition = null
)会阻止滚动。在FF中运行良好;IE9不支持过渡。可能是Chrome的一个错误? - merv