在Javascript确认对话框之后,网页将转到顶部.如何阻止这种情况
After Javascript confirm dialog, web page goes to top. How to stop this?
我使用确认对话框来确认是否从页面中删除一些元素。那部分很好用。问题是,单击"确认"或"取消"后,页面会滚动到顶部。我该如何阻止这种行为?
$('.deleter').click(function () {
if (confirm('Do you want to remove' + $(this).attr('name') + '. This action can not be undone.')) {
$('.g' + $(this).attr('itemId')).remove();
$('.' + $(this).attr('itemId')).remove();
}
});
如果做不到这一点,将窗口设置回以前的空间就可以了。
编辑:HTML代码
<a href='#' class='deleter' name='eg' itemId='4'>delete</a>
感谢阅读
它实际上是跳到位置#
(a
的默认行为)。您需要通过preventDefault()
来防止这种默认行为。
试试这个,
$('.deleter').click(function (e) {
e.preventDefault();
if (confirm('Do you want to remove' + $(this).attr('name') + '. This action can not be undone.')) {
$('.g' + $(this).attr('itemId')).remove();
$('.' + $(this).attr('itemId')).remove();
}
});
<a href='#' class='deleter' name='eg' itemId='4'>delete</a>
如果你不想你的链接像一个真正的锚链接,那么:
a。不要把它作为链接。将点击事件绑定到不同类型的对象(如按钮)
或
b。给href一个适当的null值,例如javascript:
<a href='javascript:;' class='deleter' name='eg' itemId='4'>delete</a>
听起来像是将事件绑定到一个锚点元素,其默认行为是导致对资源的GET。以下将阻止锚点的默认行为:
$('.deleter').click(function (e) {
e.preventDefault();
if (confirm('Do you want to remove' + $(this).attr('name') + '. This action can not be undone.')){
$('.g' + $(this).attr('itemId')).remove();
$('.' + $(this).attr('itemId')).remove();
}
});
或者:
$('.deleter').on('click', function (e) {
e.preventDefault();
if (confirm('Do you want to remove' + $(this).attr('name') + '. This action can not be undone.')){
$('.g' + $(this).attr('itemId')).remove();
$('.' + $(this).attr('itemId')).remove();
}
});
这是因为锚标记。像这样更改锚点标签**href="#_"**
<a href='#_' class='deleter' name='eg' itemId='4'>delete</a>
Confirm、Alert和Prompt实际上是依赖于浏览器的功能。我们无法改变它的行为或设计。或者,您希望将jquery插件用于对话框,而不是这些对话框。参考此,http://labs.abeautifulsite.net/archived/jquery-alerts/demo/
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- 正在阻止UIWebView警报
- 试图阻止Chrome通过扩展关闭
- jQuery自动完成阻止选择后聚焦
- 阻止在单击链接后转到页面顶部
- Javascript-点击时阻止JS链接滚动回顶部
- AngularJs onClick阻止滚动到顶部
- 如何阻止页面在单击链接后跳转到顶部
- 如何阻止Javascript Pop Up移动到页面顶部
- 如何阻止我的汉堡图标停留在顶部栏上,使其与侧边菜单一起显示
- 阻止在单击固定顶部菜单后导航到页面顶部
- 当我隐藏页面上的元素时,光标会跳到顶部而不是下一行.我该如何阻止这种情况
- 在Javascript确认对话框之后,网页将转到顶部.如何阻止这种情况
- Twitter引导手风琴向导每次都会滚动到页面顶部.我怎么能阻止呢?
- jQuery点击锚点标记阻止页面滚动到顶部
- 如何显示一个javascript:弹出对话框的顶部覆盖,以阻止父页面
- 如何在调用JavaScript函数时阻止网页滚动到顶部?
- 我如何阻止一个页面从滚动到顶部时,在php单击按钮
- bootstrap-modal -当我向下滚动时,我如何阻止背景显示在顶部