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
回答3:浏览器会对页面元素的某些元素产生默认行为。比如一个 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. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. font-family - 我引入CSS3自定义字体没有效果?3. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?4. macos - mac下docker如何设置代理5. dockerfile - [docker build image失败- npm install]6. objective-c - iOS开发支付宝和微信支付完成为什么跳转到了之前开发的一个app?7. PHP中的$this代表当前的类还是方法?8. angular.js - 求一款angular插件9. java - 我用Tomcat访问SQL server数据库时,出现以下错误,该怎么解决?10. docker start -a dockername 老是卡住,什么情况?