我试图仅在根站点或特定哈希 https://www.example.com/#uno 上隐藏表单.我下面的代码导致表单未显示在所有子页面(/#dos、/#tres 等)上。有人可以帮助我了解发生了什么吗?
$(function(){
if (location.hash == "" || location.hash == "#uno"){
$("#form").hide();
} else {
$("#form").show();
};
}());
最佳答案
这是因为您隐藏了一次表单,但在重新加载页面之前不会让它重新出现。 (您只检查一次哈希,在加载整个页面时,而不是在哈希更改时。
function showHideForm() {
if (location.hash == "" || location.hash == "#uno"){
$("#form").hide();
} else {
$("#form").show();
};
}
window.onhashchange = showHideForm;
关于javascript - 如何仅在匹配特定哈希时隐藏元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45361828/