前端们,大家是习惯href="#"还是href="javascript:void();"

2012-03-29 14:32:10 +08:00
 sd4399340
平常用JQuery给a绑定click事件,为了让鼠标hover上去显示手形,必须要指定href属性~

以前都是用href="javascript:void();",觉得写起来字太多,后来用href="#",但是一点就会回到上面去,也有点闹心,大家一般什么习惯?还是直接在click时间里返回false啊?
6011 次点击
所在节点    问与答
49 条回复
EchoFUN
2012-03-29 16:46:40 +08:00
@dongbeta really?所有的浏览器都兼容么?
qiuai
2012-03-29 17:22:41 +08:00
#
hdlifes
2012-03-29 17:35:31 +08:00
LZ的头像和推上是一样的吗?
javascript:; 常用
aligo
2012-03-29 17:36:16 +08:00
我都是直接href到目标页面,然后需要异步在绑定click,可以做到兼容例如不支持js的设备(虽然现在已经很少了)和爬虫识别
sd4399340
2012-03-29 17:46:37 +08:00
@hdlifes 一样啊,咱们不是互相关注的嘛
dongbeta
2012-03-29 17:48:59 +08:00
@EchoFUN 兼容性未知,我在safari下正常
lepture
2012-03-29 17:51:18 +08:00
# ,然后 e.preventDefault ,也就是jQuery里的 return false

链接不会改,也不会跳。
sd4399340
2012-03-29 17:54:27 +08:00
@lepture 其实这种蛮好的,也是有点麻烦~
sd4399340
2012-03-29 17:55:27 +08:00
@dongsheng @hellosun @underone 这个真心不错~试试~
sd4399340
2012-03-29 17:55:40 +08:00
@master 求科普~
ygmpkk
2012-03-29 19:08:50 +08:00
习惯用javascript:void();

花括号喜欢{

而不习惯
{

习惯问题吧
shuang3281
2012-03-29 23:10:56 +08:00
javascript:;
+1
Mose
2012-03-29 23:26:46 +08:00
javascript:void();是什么作用?
arzusyume
2012-03-30 09:09:06 +08:00
javascript:;
算是洁癖吧,看到url后面的#很不爽
hzlzh
2012-03-30 10:07:17 +08:00
用#,考虑到别人看的可读性,即便一些不懂的代码的人,也知道这里可以替换成链接。
ohsc
2012-03-30 10:13:24 +08:00
两个都不好,最佳体验是,href提供跳转同时js劫持跳转。

我一般会用jquery的delegate指定凡是带上.nojump的链接都禁止跳转。

这样好处是,当js还没加载时,用户可以使用降级版本。js加载后可以使用高级版本。
lhj2100
2012-03-30 10:16:56 +08:00
#;页面不会跳动..
smallcolor
2012-03-30 10:17:18 +08:00
#nogo
NemoAlex
2012-03-30 10:20:45 +08:00
如果有链接就href里写链接,JavaScript 在 Click 事件末尾 return false
如果不是一个真正的链接,那么就不要加 href 属性,样式由 CSS 控制
href="#" 这种做法会在 uri 里加上没有意义的 # 号
href="#this" 是胡扯,# + 任意一个不存在的标签页面就不会跳转了,可是这种东西没有意义,并且丑陋
FrankFang128
2012-03-30 10:53:32 +08:00
@master 什么血案?求link

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/30848

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX