【转】onclick事件与href='javascript:function()'的区别

href=‘javascript:function()‘和onclick能起到同样的效果,一般来说,如果要调用脚本还是在onclick事件里面写代码,而不推荐在href=‘javascript:function()‘ 这样的写法,因为 href 属性里面设置了js代码后,在某些浏览器下可能会引发其他不必要的事件。造成非预期效果。

而且 onclick事件会比 href属性先执行,所以会先触发 onclick 然后触发href,所以如果不想页面跳转,可以设置 onclick里面的js代码执行到最后返回一个false,这样 href 里面的东西就不会执行了。

在ajax应用程序中,多写着下面的这样 ,以表示这个链接不跳转,而执行一段js脚本。
<a href="javascript:void(0);" onclick="function()"></a>
或者 <a href="javascript:;" onclick="function()"></a>

void(0) 只是用来计算一个空值,其实也是什么事情都不做,而分号“;”则表示是一个空的js语句,这样就不会有任何其他跳转发生了,而且W3C标准不推荐在href里面执行javascript语句,所以最好还是用 onclick事件触发

【转】onclick事件与href='javascript:function()'的区别

时间: 2024-10-22 09:47:44

【转】onclick事件与href='javascript:function()'的区别的相关文章

a标签增加onclick事件提示未定义function

项目使用的是ext框架,版本是ext4.2 出现的问题代码如下: 1 renderer : function(value){ 2 var html = "<a href=\"javascript:void(0);\" onclick=\"editServer('"+value+"')\" style=\"text-decoration:underline;color:blue;\">编辑</a>

IE下href=&quot;javascript:void(0) 会弹出空白页

经过排查,发现是href="javascript:void(0);"导致的问题,本来javascript:void(0);的用处是不用整体刷新网页且返回一个空值,但这儿由于DOM本身的冒泡事件所以会最后执行HREF属性内的javascript:void(0);导致执行函数返回了一个空值,所以覆盖掉了前面正常执行函数所返回的值引起的错误. 一般情况下,IE会先运行DOM本身绑定的事件,如ONCLICK;如果没有阻止冒泡,则会顺序执行HREF属性.如果想正确运行,可以在前面用RETURN

JavaScript基础 a标记 使用onclick事件阻止默认跳转 onclick事件 与 跳转 ,onclick事件优先执行。

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"

a标签触发onclick事件而不跳转href指定路径

在web页面开发时,我们经常会遇到下列情况: 1.一个标签仅仅是要触发onclick行为: 2.表现上要有鼠标的pointer指针显示,或者其他类似a标签的视觉效果. 比如执行删除操作时,为了避免误操作,我们要弹出对话框让用户确定是否删除.因此我们经常会用链接<a></a>形式代替<button> 触发onclick事件. 代码如下: <script type="text/javascript">function del(){if(con

js 重写a标签的href属性和onclick事件

适应场景:假如移动端拨打电话,需要给a标签添加href属性,但是由于需求,需要链接跳转的同时给a标签添加onclick事件,如果不做任何处理的话,默认执行点击事件,而不会跳转href属性的链接. 怎么解决:重写a标签的href属性和onclick事件 //这段代码可放入点击事件里 (function(){ this.fnCancel(); var _event_list = {}; // 找到页面上所有的a标签 var links = document.getElementsByTagName(

href=&quot;javascript:xxx(this);&quot;和onclick=&quot;javascript:xxx(this);&quot;的区别

href="javascript:xxx(this);"和onclick="javascript:xxx(this);" 一直以为这两种写法是等同的,今天在项目中使用时发现前者的this根本拿不到触发事件的A标签,而后者可以拿到 一般在做分页按钮时会用A标签来做,但是一般都会写<a href="#" onclick="turnPage(1,10)">之类的 href="#"会导致分页在跳转时页面

&lt;a&gt;标签href属性与onclick事件

a标签主要用来实现页面跳转,可以通过href属性实现,也可以在onclick事件里实现. <a onclick="window.location.href='www.cnblogs.com'" href="javascript:void(0);">博客园</a> 博客园 这段代码在主流浏览器里都没问题,但在IE6下会出现不能跳转的问题.这究竟是什么原因呢? javascript:void(0); void(arg);可以理解为永远返回null

a标签href无值 onclick事件跳转

<a href='#'  onclick='gomore()'>更多>></a>  单击无反应 <a href='javascript:void(0)'  onclick='gomore()'>更多>></a> js实现不打开新窗口跳转 document.location.href=url; 打开新窗口跳转 window.open(url); a标签href无值 onclick事件跳转

&lt;a href=&quot;javascript:void(0)&quot; onclick=&quot;ff()&quot; &gt;&lt;/a&gt; 用法解析

javascript:void(0) 仅仅表示一个死链接 如果是个# javascript:void(#),就会出现跳到顶部的情况,搜集了一下解决方法 1:<a href="####"></a> 2:<a href="javascript:void(0)"></a> 3:<a href="javascript:void(null)"></a> 4:<a href=&qu