我们常用的在a标签中有点击事件:
1. a href="javascript:js_method();"

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

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

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

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

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

4.a href="#" οnclick="js_method()"

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

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

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

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

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

转载于:https://www.cnblogs.com/chengJAVA/p/3966661.html

a 中调用js的几种方法相关推荐

  1. a 中调用js的几种方法整理及使用推荐

    我们常用的在a标签中有点击事件: 1. a href="javascript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问 ...

  2. a 标签中调用js的几种方法

    我们常用的在a标签中有点击事件: 1. a href="JavaScript:js_method();" 这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问 ...

  3. Python调用JS的四种方法

    Python调用JS的四种方法 1.PyExecJS 方法 1).安装PyExecJS 2). `PyExecJS 示例` 2.PyV8 方法 1).安装PyV8 2). `PyV8 示例` 3.js ...

  4. C#调用JS的几种方法

    cmd调用phantomjs 官方资料:http://phantomjs.org/quick-start.html 手动执行 从官方下载phantomjs.exe,拷贝它与要执行的js同目录 打开cm ...

  5. C++/CLI Winform中调用DLL的三种方法

    一,传统的LoadLibrary 二,#pragma comment(lib,""),需要lib文件 三,dllImport 一比较适合调用自己的dll的api,二比较适合调用系统 ...

  6. HTML调用Java函数或语句,在动态THML语句中调用JS函数传递带空格参数的问题

    刚刚遇到一个问题,调用js函数的参数里带空格,造成调用失败的问题. 部分代码如下: html+=" "; //name中如果有空格就是调用失败 html+=" " ...

  7. Magento中调用JS文件的几种方法

    一.全局调用方法: 通过该方法每个页面都会引用这个JS文件,除非是类似jQuery这样的系统文件,不然不推荐这种方法. 文件路径:/app/design/frontend/default/Your_T ...

  8. a标签中调用js的方法

    1.a href="javascript:js_method();" 1.这是我们平台上常用的方法,但是这种方法在传递this等参数的时候很容易出问题,而且javascript:协 ...

  9. 如何在java中调用js方法

    [java] view plain copy/* * 加载脚本引擎,并在java中调用js方法 */ public void test2() { ScriptEngineManager manager ...

最新文章

  1. python程序员薪资-作为Python程序员,薪资一般是多少?
  2. 10、软件质量工程师指南 - 软件项目角色指南系列文章
  3. nginx ruoyi 配置静态资源服务
  4. jenkins pipeline python_Jenkins Pipeline示例
  5. 测试对等网络的连通性
  6. VC++6.0与VS2010的区别
  7. GoDaddy域名个人邮箱及Gmail转发设置
  8. 蓝牙模式-Inquiry and Page详细解析含参数
  9. Vscode 快速打开setting.json
  10. Win10系统下的MSCOMCT2.OCX, THREED32.OCX等控件安装方法
  11. HTTP之PUT请求
  12. 《Visual C++数字图像模式识别技术详解(第2版)》一2.2 Visual C++数字图像处理
  13. 绘画教程:伤口疤痕应该怎么画?如何画出皮肤质感?
  14. elasticsearch 怎么删除过期的数据
  15. TO_DATE使用詳解
  16. 请选择服务器许可证文件,获取并安装许可文件 | PowerMill 2022 | Autodesk Knowledge Network...
  17. Windows上哪款卸载软件最值得推荐?
  18. [数据库基础篇]——数据库系统概述、数据模型、数据库系统的结构、数据库系统的组成
  19. kubernetes1.8.5集群安装(带证书)
  20. 综合中央计算机系统简称,广州地铁TVM本地数据与SC报表数据不一致故障分析研究...

热门文章

  1. Linux进程和线程
  2. FIR定点提高精度的trick_02
  3. Yammer从Scala转向Java
  4. VS2015 + CUDA 8.0 配置GTX1070的OpenCL 开发环境
  5. java分隔符的引号,使用分隔符拆分带引号的字符串
  6. cad考试题库绘图题答案_证券从业资格考试证券市场基本法律法规题库答案
  7. proteus跑马灯仿真_不花费一分钱,实现跑马灯编程实验
  8. python多线程为什么要用队列_Python程序中的线程操作-线程队列
  9. 计算机专业英语第五章ppt,计算机专业英语第五章.ppt
  10. prometheus连续查询_Prometheus 不完全避坑指南