Javascript jQuery onClick on link元素
假设我有这样的代码:Javascript jQuery onClick on link元素,javascript,jquery,html,Javascript,Jquery,Html,假设我有这样的代码: <a href="www.foobar.com" class="special-click"> Content here </a> $( ".special-click" ).click(function(event) { event.preventDefault(); // Do other stuff }); $(“.special click”)。单击(函数(事件){ event.preventDefault(); //做其
<a href="www.foobar.com" class="special-click">
Content here
</a>
$( ".special-click" ).click(function(event) {
event.preventDefault();
// Do other stuff
});
$(“.special click”)。单击(函数(事件){
event.preventDefault();
//做其他事情
});
假设jQuery库已加载,我的jQuery是否保证在页面转换之前运行?换句话说,在上述示例中,是否保证用户永远不会被带到www.foobar.com?如果没有,是否有一种方法可以在不添加html onclick属性的情况下添加该行为?如果希望得到保证,请在$(document).ready(function(){})中阻止此单击事件代码
$(文档).ready(函数(){
$(“.special click”)。单击(函数(事件){
event.preventDefault();
警报(“测试”)
});
});
是的,它是有保证的-除非之前有一个阻止事件传播(立即)的处理程序,否则它是有保证的,但是如果您不想使用onclick
,那么您可以使用href
属性值替换。
根据:如果调用此方法event.preventDefault(),不会触发事件的默认操作。您的问题实际上是两个不同的问题。1) jQuery是否保证在页面转换之前运行?2)是否保证用户永远不会被带到下一个URL?#2的答案是否定的,这不是保证,因为用户可能禁用了Javascript。
<html>
<head>
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script>
$(document).ready(function () {
$(".special-click").click(function (event) {
event.preventDefault();
alert("test")
});
});
</script>
</head>
<body>
<a href="www.foobar.com" class="special-click">
Content here
</a>
</body>
</html>