gpt4 book ai didi

jQuery 检查第一个哈希值的 url 字符串,然后删除它之前的所有内容

转载 作者:行者123 更新时间:2023-12-01 04:51:41 26 4
gpt4 key购买 nike

我在尝试解决正则表达式方面的问题。

例如我有一个网址

http://localhost:8888/faqs/#answer290

我想要做的是检查网址,看看该网址是否包含哈希,如果包含,则删除它之前的所有内容,这样我就只剩下

#answer290

到目前为止我所拥有的是

$("div#questions ul li a").click(function(e){
var selected = $(this).attr('href');
console.log(selected);
if(window.location.href.indexOf("#") > -1) {
var location = window.location,
result = /\/([^\/]*)$/.exec(location)[1];
selected = result;
console.log(result);
alert("your url contains #");
} else {
selected = selected
}
$('.top-button').remove();
$('.current-faq').removeClass();
$.scrollTo(selected, 400);
$(selected).append('<a href="#" class="top-button">TOP</a>');
$(selected).addClass('current-faq');
});

要解释更多我正在做的事情,请在常见问题解答页面上,它会找到带有哈希的相应部分并在那里滚动,但问题是当我来自另一个页面时,选定的网址与实际常见问题解答页面上的不同。

在常见问题解答页面上,警报会触发,但由于某种原因,当我进入链接问题的另一个页面时,警报不会触发。

我正在尝试从另一个页面中删除整个网址,以便它只包含哈希值后的所有内容。

我似乎很接近,但很难获得最后一部分

谢谢

最佳答案

您不需要 RegEx。 indexOf/substring 就可以了:

var s = "http://localhost:8888/faqs/#answer290";

var i = s.indexOf("#")

if (i != -1) {
alert(s.substring(i, s.length));
}

如果需要读取 anchor 的哈希属性,可以使用.prop('hash')。例如对于

<a id="link" href="http://localhost:8888/faqs/#answer290">link</a>

$("#link").prop("hash") 将得到“#answer290”

关于jQuery 检查第一个哈希值的 url 字符串,然后删除它之前的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19035855/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com