一、href="javascript:;" 这种用法不正确,这么用的话会出现浏览器访问“javascript:;”这个地址的现象;
二、href="javascript:void(0);" 表示点击这个链接后执行一条javascript语句:void(0); 这条语句表示什么也不做,是个空语句,出现它的原因,就是因为这个链接里面会出现一个点击事件,onclick="sss()";
三、href="#" 这个与Javascript没关系了,这是HTML的链接用法,它并不是没有链接,而是前往当前网页的顶部,如果你的网页比较长,需要向下拉很远的滚动条,这时候你如果想快速地返回到顶部,那么就用这个链接,点一个,网页的滚动条就到最上方了,这种使用#对链接进行标识的用法,叫做锚。
四、希望使用a标签来对一个函数进行调用,除了以上第二项最常用的方式式外,还有一种:
第二项介绍的方法:链接
另一种用法,或许是你所说的第一种吧:链接
以上两种用法达到的效果是一样的。
至于onClick="aaa()" 的用法,是Javascript的事件了,只要一个标签里有这个属性,就表示在鼠标完成一次点击后,执行aaa()这个函数,这个函数在你的网页中,或在你的网页所引入的某个JS文件中;
以下是JavaScript常用事件:
onClick :鼠标完成一次点击,即鼠标左键按下后抬起之后;
onMouseDown :鼠标按下事件,即鼠标左或右键被按下;
onMouseUp :鼠标抬起事件,即鼠标不管在哪里被按下,但是只要在这个元素上被抬起;
onMouseMove :鼠标移动事件,即鼠标在这个元素上移动;
onMouseOver :鼠标移入事件,即鼠标从其它位置移到到该元素上;
onMouseOut :鼠标移出事件,即鼠标从该元素上离开;
参考资料:
【链接的锚】http://baike.baidu.com/view/972689.htm
【href中#与javascript:的区别】http://blog.163.com/chtx87_98/blog/static/654011192011829510979/