jquery / javascript - 解析网址,看看你是否在某个页面上

时间:2010-10-14 00:34:01

标签: javascript jquery

所以说你有一些导航,你没有/不能使用服务器端代码来选择哪个链接是“当前”。如何使用url的第一部分(如在第一个斜杠之后但在任何下一个斜杠之前),即(example.com/dashboard/view/16)将返回仪表板。当然,并不总是有第二个斜杠,它可能是(example.com/dashboard)。在哈希标记之前,即(example.com/dashboard#users)将返回仪表板。

是使用location.href并尝试编写一些函数来解析它的最佳选择吗?或者有什么东西已经制作/更简单了吗?

4 个答案:

答案 0 :(得分:1)

你应该可以这样做:

var page = window.location.pathname.split('/')[1];

alert(page);​

答案 1 :(得分:1)

该位置的pathname属性是否有意义?

来自w3schools

hash   Returns the anchor portion of a URL
host  Returns the hostname and port of a URL
hostname  Returns the hostname of a URL
href  Returns the entire URL
pathname  Returns the path name of a URL
port  Returns the port number the server uses for a URL
protocol  Returns the protocol of a URL
search  Returns the query portion of a URL

答案 2 :(得分:0)

很容易自己解析它。

window.location.pathname.slice(1).split('/')[0]

正是您要找的。

答案 3 :(得分:0)

$("a[pathname="+location.pathname+"]")

该jQuery集合将包含链接到当前页面的所有链接。您可以使用更具体的选择器将其缩小到某些元素,然后对其应用样式。

例如:

$("#navigation a[pathname="+location.pathname+"]").css('color', 'red');