Jquery 检查是否存在哈希,如果不存在,则添加哈希

Jquery 检查是否存在哈希,如果不存在,则添加哈希,jquery,Jquery,我试图检测是否存在哈希,如果没有,则使用添加哈希到URL。我读过很多关于stack的文章,试图找到解决方案,但我似乎无法让我的代码正常工作 if(window.location.hash == ''){ window.location = $("#home").attr('href'); } 该代码实际上将站点重定向到 这是一个404错误页面 我一直在绞尽脑汁想为什么,但我就是不明白 “主页”部分的代码为: <div class="panel"> <section i

我试图检测是否存在哈希,如果没有,则使用添加哈希到URL。我读过很多关于stack的文章,试图找到解决方案,但我似乎无法让我的代码正常工作

if(window.location.hash == ''){
window.location = $("#home").attr('href');
}
该代码实际上将站点重定向到 这是一个404错误页面

我一直在绞尽脑汁想为什么,但我就是不明白

“主页”部分的代码为:

<div class="panel">
    <section id="home">
     <div class="content">
      <div id="logo">
       <img src="images/logo.png">
      </div>
     </div>
    </section>
</div>


该网站正在使用CSS提供动画面板的错觉,所有4个面板都被推到网站边距之外,当
panel:target
进入视图时。如果没有意义,请道歉。

使用
location.hash设置哈希值。

if(window.location.hash == ''){
    location.hash = '#yourhash';
}

您被奇怪地重定向的原因是
$(“#home”)
不存在,因此未定义。

#home
不是页面上的有效元素
id
,或者选择器不正确。这个元素的HTML是什么样子的?测试home元素是否也有href属性。换句话说,页面上的某个地方应该有一个类似这样的元素:
嗯,没有
标签带有
id='home'
和相应的
href='#blah'
..?感谢您的回答!看来我是个白痴,错过了显而易见的事情!这非常有效谢谢你,看来我只是错过了摆在我面前的显而易见的逻辑。我会尽快将您的答案标记为正确答案。请注意,这两种方法都可以,但在设置
位置时,
不是必需的。hash