我们常用的在a标签中有点击事件:
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"
方法和详细的操作步骤如下:
1、第一步,创建文件夹,此文件夹包含一个js文件夹和一个html文件。 js文件夹用于存储需要导入的js文件,见下图,转到下面的步骤。
2、第二步,执行完上面的操作之后,打开html文件,在html文件上找到<body>,在<body>标记中创建按钮标签,然后向该标签添加click addJs事件,见下图,转到下面的步骤。
3、第三步,执行完上面的操作之后,在js文件夹中创建一个js文件,名称为addJs.js,见下图,转到下面的步骤。
4、第四步,执行完上面的操作之后,在addJs.js文件中输入一个警报弹出框并保存。 成功导入js文件后,将执行警报弹出框,见下图,转到下面的步骤。
5、第五步,执行完上面的操作之后,返回html文件,在按钮输入框后面创建一个脚本标签,然后添加用于引入addJs.js文件的addJs事件,见下图,转到下面的步骤。
6、第六步,执行完上面的操作之后,保存html文件,使用浏览器将其打开,然后单击按钮以查看弹出窗口,表明js文件已成功引入,见下图。这样,以上的问题就解决了。
如此是不可能实现的,可以在a标签的“abc”外添加一个span。<span id="spanId">abc</span> 即,<a id="xxx" href=""><span id="spanId">abc</span></a> 然后js里,document.getElementById("spanId").click() 你要点击的是abc 这个 所以你模拟点击事件肯定是要点这个abc啊