事件默认行为

浏览器的默认行为:JavaScript事件本身具有的属性,例如a标签的跳转,Submit按钮的提交,右键菜单,文本框的输入等。
阻止默认行为的方式:event.preventDefault(); event.returnValue = false; return false;

一、现象

先上代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>
			
		</title>
	</head>
	<body>
		<a href="">单击我</a>
		<script type="text/javascript">
			var oLink = document.getElementsByTagName("a")[0];
			oLink.onclick = function(){
				console.log("aaa");
			}
		</script>
	</body>
</html>

运行后发现,单击文本后控制台并未输出“aaa”;

由于浏览器默认a标签进行跳转,a标签内并未添加实际网址,于是页面在单击后进行刷新,控制台无法进行有效(肉眼可见)的输出。

二、阻止默认行为的发生

三种方法

1、return false;

<script type="text/javascript">
			var oLink = document.getElementsByTagName("a")[0];
			oLink.onclick = function(){
				console.log("aaa");
				return false;
			}
		</script>

2、evt.returnValue = false;

<script type="text/javascript">
			var oLink = document.getElementsByTagName("a")[0];
			oLink.onclick = function(e){
				var evt = e || event;
				console.log("aaa");
				evt.returnValue = false;
			}

3、evt.preventDefault();

<script type="text/javascript">
			var oLink = document.getElementsByTagName("a")[0];
			oLink.onclick = function(e){
				var evt = e || event;
				console.log("aaa");
				evt.preventDefault();
			}
		</script>

以上三种方法均可阻止默认行为的发生。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值