`
zhsq_java
  • 浏览: 62044 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

<a> 里面herf执行JS函数的处理办法,网上找的一个比较靠谱的,转下

    博客分类:
  • JS
阅读更多
a标签中调用javascript方法的几种方法:
我们常用的在a标签中有点击事件:
1. a href="javascript:js_method();"

这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协议作为a的href属性的时候不仅会导致不必要的触发window.onbeforeunload事件,在IE里面更会使gif动画图片停止播放。W3C标准不推荐在href里面执行javascript语句

2. a href="javascript:void(0);" onclick="js_method()"

这种方法是很多网站最常用的方法,也是最周全的方法,onclick方法负责执行js函数,而void是一个操作符,void(0)返回undefined,地址不发生跳转。而且这种方法不会像第一种方法一样直接将js方法暴露在浏览器的状态栏。

3.a href="javascript:;" onclick="js_method()"

这种方法跟跟2种类似,区别只是执行了一条空的js代码。

4.a href="#" onclick="js_method()"

这种方法也是网上很常见的代码,#是标签内置的一个方法,代表top的作用。所以用这种方法点击后网页后返回到页面的最顶端。

5.a href="#" onclick="js_method();return false;"

这种方法点击执行了js函数后return false,页面不发生跳转,执行后还是在页面的当前位置。

我看了下taobao的主页,他们采用的是第2种方法,而alibaba的主页是采用的第1种方法,和我们的区别是每个href里的javascript方法都用try、catch包围。

综合上述,在a中调用js函数最适当的方法推荐使用:
a href="javascript:void(0);" onclick="js_method()"
a href="javascript:;" onclick="js_method()"
a href="#" onclick="js_method();return false;"

看到有人又用了一种方法:a href="###" onclick="js_method();",挺好用的
分享到:
评论

相关推荐

    PHP教程

    &lt;br&gt;apache服务器专用函数库 &lt;br&gt;数组处理函数库 &lt;br&gt;拼写检查函数库 &lt;br&gt;BC 高精确度函数库 &lt;br&gt;历法函数库 &lt;br&gt;ClibPDF 函数库 &lt;br&gt;日期与时间函数库 &lt;br&gt;DBA 函数库 &lt;br&gt;dBase 格式资料表函数库 &lt;br&gt;dbm 类数据库...

    阻止 <a> 地址轉向

    然而,有时我们可能需要阻止 `&lt;a&gt;` 标签的默认行为,例如防止页面跳转或者在点击链接时执行特定的 JavaScript 代码。这种情况下,我们可以利用 `onclick` 事件或者其他方法来实现这一目标。 一、`onclick` 事件 `...

    SQL2005入门到精通(11)

    第11章 函数 232&lt;br&gt;11.1 函数概述 232&lt;br&gt;11.1.1 函数的结构 232&lt;br&gt;11.1.2 函数的类型 232&lt;br&gt;11.1.3 使用函数的优点 233&lt;br&gt;11.2 设计用户定义函数 233&lt;br&gt;11.2.1 选择函数类型 233&lt;br&gt;11.2.2 函数与存储过程 233...

    C#编程经验技巧宝典

    的值 52&lt;br&gt;&lt;br&gt;0069 求最大公约数 52&lt;br&gt;&lt;br&gt;0070 求最小公倍数 53&lt;br&gt;&lt;br&gt;0071 判断素数的算法 53&lt;br&gt;&lt;br&gt;0072 如何判断一个数是否是完数 54&lt;br&gt;&lt;br&gt;0073 歌德巴赫猜想的算法 54&lt;br&gt;&lt;br&gt;0074 八皇后...

    ++键盘响应事件

    标题中的“&lt;ctrl&gt;+&lt;alt&gt;+&lt;F8&gt;键盘响应事件”是指在计算机操作系统中,通过按下特定的组合键——Ctrl、Alt和F8,触发一个特定的系统或应用程序响应。这种组合键通常用于执行某些预设的功能或者调试操作。在不同的操作...

    按回车键时跳到下一个表单元素的javascript代码

    按回车键时跳到下一个表单元素的javascript代码&lt;br&gt;&lt;br&gt;函数说明:按回车键时跳到下一个表单元素&lt;br&gt;JumpToNextElement() 用于按回车键时跳到下一个表单元素(统一处理按回车键的问题)&lt;br&gt;在页面调用:&lt;br&gt;&lt;script ...

    mysql5.1中文手册

    目录&lt;br&gt;&lt;br&gt;前言&lt;br&gt;1. 一般信息&lt;br&gt;1.1. 关于本手册&lt;br&gt;1.2. 本手册采用的惯例&lt;br&gt;1.3. MySQL AB概述&lt;br&gt;1.4. MySQL数据库管理系统概述&lt;br&gt;1.4.1. MySQL的历史&lt;br&gt;1.4.2. MySQL的的主要特性&lt;br&gt;1.4.3. MySQL稳定性...

    javascrip上百技术总集

    &lt;br&gt;js访问xml之节点对象属性和方法&lt;br&gt;js访问xml之删除一个book元素节点&lt;br&gt;js访问xml之添加一个book元素节点&lt;br&gt;【JS】兼容ff的加入收藏和设为首页&lt;br&gt;【补】【sina】绕过sina博客的限制,超级BT执行Javascript&lt;br...

    Windows 脚本技术参考手册

    > 元素&lt;br&gt; <description> 元素&lt;br&gt; <example> 元素&lt;br&gt; <job> 元素&lt;br&gt; <named> 元素&lt;br&gt; <object> 元素&lt;br&gt; <package> 元素&lt;br&gt; <reference> 元素&lt;br&gt; <resource> 元素&lt;br&gt; <runtime> 元素&lt;br&gt;...

    网页设计常用的Javascript特效代码

    &lt;a href="javascript:doZoom(16)"&gt;大&lt;/a&gt; &lt;a href="javascript:doZoom(14)"&gt;中&lt;/a&gt; &lt;a href="javascript:doZoom(12)"&gt;小&lt;/a&gt; ``` 此段代码定义了一个`doZoom`函数,该函数接收一个参数`size`,用于设置元素的字体...

    openssl编程

    249&lt;br&gt;31.4 数据结构 250&lt;br&gt;31.5 加密套件 251&lt;br&gt;31.6 密钥信息 252&lt;br&gt;31.7 SESSION 252&lt;br&gt;31.8 多线程支持 253&lt;br&gt;31.9 编程示例 253&lt;br&gt;31.10 函数 264&lt;br&gt;第三十二章 Openssl命令 267&lt;br&gt;32.1概述 267&lt;br&gt;...

    JavaScript学习笔记.pdf

    &lt;/p&gt;&lt;button type="button" onclick="myFunction()"&gt;点击这里&lt;/button&gt;&lt;script&gt;function myFunction(){document.getElementById("demo").innerHTML="我的第一个 JavaScript 函数";}&lt;/script&gt;&lt;/body&gt; 4、外部的 ...

    jquery-1.1.3 效率提高800%

    &lt;br&gt;Safari 2 3575ms 475ms 753% &lt;br&gt;Opera 9.1 3196ms 326ms 980% &lt;br&gt;Average improvement: 867% &lt;br&gt;&lt;br&gt;下表为jQuery1.1.3与常用的一些JS库选择器的对比:&lt;br&gt;Browser Prototype jQuery Mootools Ext Dojo &lt;br&gt;...

    实用 JS滑动门

    &lt;li class="thisStyle"&gt;&lt;a href="javascript:void(0)"&gt;目录&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="javascript:void(0)"&gt;选项1&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="javascript:void(0)"&gt;选项2&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="javascript:void(0)"&gt;...

    autolisp函数大全实例.pdf

    例如, `(defun &lt;name&gt; &lt;args&gt;)` 函数用于定义一个函数, `(apply &lt;fun&gt; &lt;args&gt;)` 函数用于调用一个函数。 显示、打印控制功能函数 Autolisp 的显示、打印控制功能函数用于实现显示和打印的控制。这些函数可以用于...

    C#.net_经典编程例子400个

    第1章 窗体与界面设计 1&lt;br&gt;1.1 菜单应用实例 2&lt;br&gt;实例001 带历史信息的菜单 2&lt;br&gt;实例002 菜单动态合并 3&lt;br&gt;实例003 像开始菜单一样漂亮的菜单 4&lt;br&gt;实例004 任务栏托盘菜单 5&lt;br&gt;实例005 可以拉伸...

    C /C++库函数及文件大全 经典 chm

    Character &lt;br&gt;Standard C Math &lt;br&gt;Standard C Time & Date &lt;br&gt;Standard C Memory &lt;br&gt;Other standard C functions &lt;br&gt;All C Functions&lt;br&gt;C++&lt;br&gt;C++ I/O &lt;br&gt;C++ Strings &lt;br&gt;C++ String Streams &lt;br&gt;...

    JavaScript的执行过程详细研究

    在这个阶段,JavaScript引擎会处理函数声明和变量声明,提前创建相应的函数对象和变量对象,并将变量初始化为`undefined`。 **示例代码**: ```javascript function Hello() { alert("Hello"); } Hello(); ...

    javascript下拉菜单.txt

    每个列表项`&lt;li&gt;`包含一个链接`&lt;a&gt;`和一个子列表`&lt;ul&gt;`,后者进一步包含了更多的链接。 ```html &lt;ul id="navigation"&gt; &lt;li onmouseover="displaySubMenu(this)" onmouseout="hideSubMenu(this)"&gt; &lt;a href="#"&gt;...

Global site tag (gtag.js) - Google Analytics