今天无意中发现JavaScript:void的使用,很有趣,也解决了我一直都没注意的的问题。
在JavaScript中,void是一个操作符,该操作符指定计算表达式,但不返回值。
void操作符使用格式:
1. javascript:void (expression)
2. javascript:void expression
expression是一个要计算的JavaScript标准的表达式,表达式外侧的括号是可选的,但习惯上是写上的。
你可以使用void操作符指定超链接,表达式会被计算,但不会在当前文档处装入任何内容。
例如:
<a href="javascript:void(window.open('http://www.baidu.com','newWindow',100,400))" > Click me</a>
javascript:void(0) 与 a href=#的区别:
1. #包含了一个位置信息, 默认的锚是#top,也就是网页的上端。
2. javascirpt:void(0) 仅表示一个死链接
这就是为什么有的时候页面很长浏览链接明明是#却跳动到了页首
而javascript:void(0) 则不是如此
所以调用脚本的时候最好用void(0)
或者<input onclick><div onclick>等