javascript - html中阻止默认事件
问题描述
<!DOCTYPE HTML><html lang='en-US'><head> <meta charset='UTF-8'> <title></title></head><body> <a href='http://www.qq.com' onclick = 'return f1()'>腾讯</a> <script type='text/javascript'>//定义f1函数function f1(){ console.log( ’腾讯被点击了’); return false;}</script></body></html>
问题解答
回答1:onclick是个函数,不return就是没有返回值,怎么阻止默认事件?跟你f1是否return没有关系
回答2:能不能阻止默认行为是看onclick函数的返回值,有return的时候,返回f1的返回值false。
不写return的onlick处理函数如下,此时的返回值因为没有return语句,所以默认返回undefined
浏览器会对页面元素的某些元素产生默认行为。比如一个 a 链接点击之后,会自动跳转至对应 href 地址网页去;又如一个表单,当你点击 提交 按钮之后,默认会将数据发送至 form 的 action 地址去。这些都是浏览器的处理页面元素的默认行为,当 onlick = 'return false' 时,会禁止掉这种浏览器的默认行为。故而你的这段代码并不会跳转至 腾讯首页 去。<a href='http://www.qq.com' onclick = 'return f1()'>腾讯</a> function f1(){console.log( ’腾讯被点击了’);return false; }
另外,你应该善用搜索引擎,百度一下,第一条就可以解决掉你的困惑,地址如下:https://zhidao.baidu.com/ques... 。望共同进步,共勉之~
回答4:<a href='http://www.baidu.com' onclick='myFun(event)'>123</a>function myFun(e) { e.preventDefault(); console.log(12313123)}
这样岂不是更简单。。。。用e.preventDefault();来阻止
还有,既然要阻止,干嘛还要在页面上写上链接。。。
回答5:onclick属性的值是js代码,return f1(),如果f1()返回false的话,return f1()就代表return false。当然,这个return是有点多余,但是语法也没错。只要语法没错,实现了就行。
相关文章:
1. django - 后台返回的json数据经过Base64加密,获取时用python如何解密~!2. tp6表单令牌3. 网络传输协议 - 以下三种下载方式有什么不同?如何用python模拟下载器下载?4. 我在centos容器里安装docker,也就是在容器里安装容器,报错了?5. 我的html页面一提交,网页便显示出了我的php代码,求问是什么原因?6. docker 17.03 怎么配置 registry mirror ?7. angular.js - Angular路由和express路由的组合使用问题8. java 排序的问题9. 老哥们求助啊10. node.js - node 客户端socket一直报错Error: read ECONNRESET,用php的socket没问题哈。。
