如何阻止浏览器的默认行为?

什么是默认行为?

  • 默认行为,就是不用我们注册,其本身就存在的事情

    • 比如我们点击鼠标右键的时候,会自动弹出一个菜单
    • 比如我们点击 a 标签的时候,我们不需要注册点击事件,他自己就会跳转页面
  • 像这些不需要我们注册就能实现的事情,我们叫做默认事件

阻止默认行为

  • 有的时候,我们不希望浏览器执行默认事件

    • 比如我给 a 标签绑定了一个点击事件,我点击你的时候希望你能告诉我你的地址是什么 ,而不是直接跳转链接 ,那么我们就要把 a 标签原先的默认事件阻止,不让他执行默认事件

我们有两个方法来阻止默认事件

  • e.preventDefault() : 非 IE 使用
  • e.returnValue = false :IE 使用

我们阻止默认事件的时候也要写一个兼容的写法

    var oA = document.querySelector('a')a.addEventListener('click', function (e) {e = e || window.eventconsole.log(this.href)//下面这个是兼容写法e.preventDefault ? e.preventDefault() : e.returnValue = false})

实例

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script type="text/javascript">window.onload = function () {//抓取元素var a = document.getElementById("a");a.onclick = function (e) {//获得事件对象var e = e || window.event;//判断浏览器if (document.all) {//阻止IE浏览器的默认行为//阻止a标签跳转和from表单的提交e.returnValue = false;} else {//阻止非IE浏览器的默认行为//阻止a标签跳转和from表单的提交e.preventDefault()}}}</script>
</head><body><a id="a" href="http://www.baidu.com">跳转百度</a><a href="javascript:;">阻止a标签跳转</a><a href="javascript:viod(0);">阻止a标签跳转</a>
</body></html>

如何阻止浏览器的默认行为?相关推荐

  1. js 停止事件冒泡 阻止浏览器的默认行为

    在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到"停止事件冒泡"和"阻止浏览器默认行为". 浏览器默认行为: 在form中按回车键就会提交表单:单击鼠标 ...

  2. js取消气泡事件、阻止浏览器的默认行为

    1.阻止事件冒泡,使成为捕获型事件触发机制. 取消tr里面子元素响应tr定义的事件,在tr子元素里面禁止气泡事件就可以,子元素事件中加入window.event.cancelBubble=true 即 ...

  3. JavaScript停止冒泡和阻止浏览器默认行为

    原文链接:http://caibaojian.com/javascript-stoppropagation-preventdefault.html 事件兼容 function myfn(e){ var ...

  4. javascript阻止事件冒泡和浏览器的默认行为

    http://www.aspxhome.com/javascript/skills/200712/262128.htm 就是说用Div框住flash  Div的鼠标事件不传递给Body 文中说的方法记 ...

  5. javascript 阻止冒泡和浏览器的默认行为

    在使用javascript编程时会遇到一个问题,就是当你给html添加事件时,由于浏览器默认的为冒泡型事件触发机制,所以会触发你不想触发的事件.那么通过如下的函数可以解决这个问题. 1.阻止事件冒泡 ...

  6. js阻止浏览器默认事件

    1.阻止浏览器的默认行为 function stopDefault(e) { //如果提供了事件对象,则这是一个非IE浏览器 if(e && e.preventDefault) { / ...

  7. html js 禁用浏览器上下滑动,纯JS阻止浏览器默认滚动事件,实现自定义滚动方法...

    首先该方法兼容IE7+以上浏览器,可以实现页面上下滚动,而且也可以实现页面左右滚动,每次滚动的距离为屏幕的大小,滚动为加速滚动 javaScript代码如下: //滚动实现方法,使用鼠标滚轮每次滚动浏 ...

  8. 阻止浏览器默认行为事件

    欢迎访问我的博客地址 : 博客地址 有时候我们在页面中需要阻止浏览器的默认行为事件,在W3C的方法是e.preventDefault(),IE则是使用e.returnValue = false,pre ...

  9. vue移动端长按文字、图片阻止浏览器默认行为

    首先说一下我们项目的需求,需要在浏览器中做一个像某X那种长按消息可以撤回的功能.先展示一下最终的效果图. OK, now let's look at the code,Warning:全是干货! &l ...

最新文章

  1. 升级Windows Phone Developer Tools Beta
  2. C++中类成员函数的重载、覆盖和隐藏的区别,超清楚!
  3. Python 类常用各种方法及区别
  4. Git删除不存在对应远程分支的本地分支
  5. pythonrequest函数_[Python]requests模块:HTTP请求时的回调函数
  6. php get 分页,PHP_codeigniter实现get分页的方法,本文实例讲述了codeigniter实现ge - phpStudy...
  7. libevhtp介绍与demo构建
  8. 学习使用Ansj分词工具(一)
  9. knn算法python代码识别手写数字_python使用KNN算法识别手写数字
  10. 最全最新cpu显卡天梯图_显卡天梯图,CPU天梯图汇总(大概是最全的天梯图)第三期...
  11. 淘宝刷单怎么刷?买手黑号为什么会成为黑号?
  12. 华为设备默认console密码
  13. 海定计算机计算标准差,方差 标准差
  14. compiled.php,laravel compiled.php 缓存 命令行
  15. python居然能语音控制电脑壁纸切换,只需60行代码
  16. centos主机测磁盘读写速度极限
  17. Three.js显示物体的运动轨迹
  18. 重磅!2020 ACM杰出科学家名单出炉:叶杰平、崔鹏等26位华人学者上榜
  19. 2D横板动作游戏常用角色移动逻辑(转)
  20. 快乐AK场2 E 删删删越小越好 单调栈

热门文章

  1. npm run dev报错:getaddrinfo ENOTFOUND localhost
  2. pytorch 寻找二元函数的最小值
  3. Centos7.6 安装cmatrix黑客帝国代码屏保
  4. POCO软件测试工程师,Poco: 跨平台的UI自动化测试框架,适用于游戏和App
  5. MATLAB 的BPSK信号调制
  6. _IO(), _IOR(), _IOW(), _IOWR() 宏的用法与解析
  7. 换工作,千万不要用恋爱脑
  8. 免杀veil的简单使用
  9. win7下安装netmeeting
  10. 从零开始完成Yolov5目标识别(四)封装一个跨设备的YOLOv5检测软件