请问为什么a标签的href里写的是js代码,而不直接写链接?

为什么有些网站,a标签的href不直接写链接地址,比如像我这样做:
我的href

而是这样
别人的href

也就就是说,他们在href里写了js代码,而不是直接写链接

这样做的目的是什么?我猜测

  1. 为了所谓的“行为和结构分离”

  2. 为了不让人直接看到链接
    如果我的1号猜测正确,请问“行为和结构分离”这个概念,是哪里提出来的?我要去看什么书来获得更多的信息?

阅读 4.9k
4 个回答

像你例子里那个,lw2013那个对象,应该不是写出来的源码,是打包以后生成的代码,这里的href是调用了一个方法,并不是返回一个你说的什么.php的地址,可能是一个弹窗什么的,相当于把这个事件绑定在这个a标签上了。

至于什么行为和结构分离,得看源码,代码结构是怎样的,怎么实现的。
你可以看看js的设计模式,多看看现有成熟框架的脚手架,比如react,vue,angular,去了解他们设计的目的。

一句话:用来把链接当按钮用,按钮需要的是在点击时调用相应的事件函数进行相关的处理。

可能具体得情况不同,你得注销得链接,是进入一个php页面,然后php处理注销一系列程序,然后跳转到其他页面。

下面网站是登录框,可能他是弹出一个浮层得登陆框等等,但是如果点击登录是连接到专门得登录页面,我想一般也是直接在href里写地址的。。

这种的话,一般来说不是跳转登陆,而很可能是弹窗登陆,这种javascritp的写法,应该不是为了直接跳转页面,至少是要执行某些方法后再进行跳转页面

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题