Javascript-获取不带页码的当前页面URL
Javascript - get current page URL without pagination numbers
假设我有一篇文章的URL:
http://domain.com/blog/articles/title-here/
它大约有5页,所以当你浏览每一页时,你会得到:
http://domain.com/blog/articles/title-here/或http://domain.com/blog/articles/title-here/1
http://domain.com/blog/articles/title-here/2
http://domain.com/blog/articles/title-here/3
http://domain.com/blog/articles/title-here/4
http://domain.com/blog/articles/title-here/5
我知道以下代码将获得完整的当前URL(又名包括页面#(:
var u = window.location.href;
但是有没有办法限制它,使页面#不是变量"u"的一部分?
也许有一个正则表达式或我应该添加的东西。。?(我对javascript还很陌生,所以不知道如何应用它?(
var u = window.location.href.match(/.*[/][^'d]*/)[0]
这对你有用吗?
编辑
我再次更改了它:p
注意:Regex是Joseph的一个更复杂的版本,仍然存在相同的错误。当我修复它时将取消删除。
Joseph的回答很好,但它有一个小错误:如果你有一个类似的URL,它会删除URL的最后一部分
http://domain.com/blog/articles/title-here
你可以用这个代替:
var u = window.location.href.match(/(.*)('/'d*)/)[1]
正则表达式的工作原理:
/ # delimiter
(.*?) # match anything and put in capture group 1
('/ # match the forward slash
'd*) # match zero or more digits
/ # delimiter
var l = window.location;
l.href.replace(l.pathname, l.pathname.split(/'/[0-9]+$/)[0]);
在控制台中的这个URL尝试
Regex会这么做。但在这种情况下,你可以把它变成一个数组,去掉结束项,然后重新序列化。
var a = 'http://domain.com/blog/articles/title-here/2'.split('/');
a.splice(-1, 1);
a.join('/');
- 获取当前网页URL
- 如何使用Javascript获取当前页面URL,并在<a href="[the_URL]”>
- 将当前页面 URL 传递给 iframe 地址
- 如何摆脱AngularJS中的当前域URL链接
- 在Firefox Addon中获取当前浏览器url
- 获取当前页面的URL并将其附加到Facebook共享链接(使用javascript)
- 在事件发生时获取元素位置的当前页面 URL,并将该 URL 输出到另一个页面上
- 如何在 safari 中获取当前页面的 url 和标题
- 如何在javascript中获取上一页URL
- 检测具有 href 属性的“A”标记,该属性等于当前页面的 URL
- 获取上一页 URL 而不是当前页面
- 如何定义相对于当前页面的 URL w jQuery
- 我想通过javascript生成当前页面的url,并添加两个参数
- 从当前页面的URL中删除哈希
- 如何在文本输入中显示当前页面的url,供用户复制
- 如果前一页url以“-cn”结尾,则更改当前页面的内容
- 使用javascript在重载时更改当前页面的URL
- 如何在不刷新页面的情况下将当前页面的url发送给servlet
- 如何查找当前页面的url(如“index.html”)
- 链接会附加到当前页面的URL