如何将字符串添加到 window.location.hash
How to add string to window.location.hash
任何想法我该如何写:
var hashValue = "#" + window.location.hash.substr(1);
$([document.documentElement, document.body]).animate({
scrollTop: $(hashValue).offset().top
}, 500);
没有出现此错误:
未捕获错误:语法错误,无法识别的表达式:#
它是这样工作的,但我不想在控制台中看到这个错误。
var hashValue = "#" + window.location.hash.substring(1);
$([ document.documentElement, document.body ]).animate({
scrollTop: hashValue === '#' ? 0 : $(hashValue).offset().top
}, 500);
我们假设 window.location.hash
是空字符串。在这种情况下 hashValue
是 "#"
.
因此 jQuery 调用 $(hashValue)
无法将其识别为元素 ID,因此会引发语法错误。
任何想法我该如何写:
var hashValue = "#" + window.location.hash.substr(1);
$([document.documentElement, document.body]).animate({
scrollTop: $(hashValue).offset().top
}, 500);
没有出现此错误:
未捕获错误:语法错误,无法识别的表达式:#
它是这样工作的,但我不想在控制台中看到这个错误。
var hashValue = "#" + window.location.hash.substring(1);
$([ document.documentElement, document.body ]).animate({
scrollTop: hashValue === '#' ? 0 : $(hashValue).offset().top
}, 500);
我们假设 window.location.hash
是空字符串。在这种情况下 hashValue
是 "#"
.
因此 jQuery 调用 $(hashValue)
无法将其识别为元素 ID,因此会引发语法错误。