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. javascript - html 中select如何修改样式,鼠标悬浮时改变option样式,有没有插件啊2. javascript - weex和node,js到底是怎样一个关系呢?3. javascript - 父级设置了相对定位。子元素设置了绝对定位。子元素中包含了浮动的table,这个时候高度不能自适应。4. javascript - vue异步数据打印问题5. Span标签6. dockerfile - 为什么docker容器启动不了?7. javascript - 表单ajax提交后跳转,手机按返回又进入这个表单页了!!8. docker start -a dockername 老是卡住,什么情况?9. golang - 用IDE看docker源码时的小问题10. apache - 想把之前写的单机版 windows 软件改成网络版,让每个用户可以注册并登录。类似 qq 的登陆,怎么架设服务器呢?
