Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery Hashchange addClass不工作_Jquery_Hash_Jquery Bbq - Fatal编程技术网

Jquery Hashchange addClass不工作

Jquery Hashchange addClass不工作,jquery,hash,jquery-bbq,Jquery,Hash,Jquery Bbq,我目前正在使用来生成哈希更改,这样当我的content div设置动画时,我就可以使用back按钮功能。我找到了一个,它为我提供了我想要的功能,但是我很难让我的菜单指示它在哪个哈希上 这是我的基本代码: HTML CSS 我对脚本进行了设置,以便在页面加载时选择“Home”,并且它显示为蓝色。单击链接后,类“selected”将按其应该的方式删除,但行$(“a[hash=“+hash+”])。addClass(“selected”);似乎什么都没做,我一辈子也不知道为什么。我仔细研究了教程中的代

我目前正在使用来生成哈希更改,这样当我的content div设置动画时,我就可以使用back按钮功能。我找到了一个,它为我提供了我想要的功能,但是我很难让我的菜单指示它在哪个哈希上

这是我的基本代码:

HTML CSS 我对脚本进行了设置,以便在页面加载时选择“Home”,并且它显示为蓝色。单击链接后,类“selected”将按其应该的方式删除,但行$(“a[hash=“+hash+”])。addClass(“selected”);似乎什么都没做,我一辈子也不知道为什么。我仔细研究了教程中的代码,看到了它的工作原理,但在我的页面上它不工作。我真的很感激你再给我一双眼睛……我确信这是件愚蠢的事情。谢谢你的帮助


编辑-删除了标记和CSS中的一些无关信息。

终于找到了答案!使用2010年的示例时,应该使用与示例相同的jQuery库。如果我从示例中复制jQuery库并加载它,而不是加载最新版本,那么一切都会很顺利。因此,
$(a[hash=“+hash+”])行中的内容。addClass(“selected”)
不能在最新版本中工作(或已弃用)。

终于找到了答案!使用2010年的示例时,应该使用与示例相同的jQuery库。如果我从示例中复制jQuery库并加载它,而不是加载最新版本,那么一切都会很顺利。因此,
$(a[hash=“+hash+”])行中的内容。addClass(“selected”)
不能在最新版本中工作(或已弃用)。

您能更准确地说什么不工作吗?烧烤是否显示出一些工作上的成功?后退按钮功能有问题吗?也许一把JS小提琴会有帮助。嘿!我开始做JS提琴,但我不确定我是否可以包括烧烤插件?也许我可以…不确定。烧烤正在起作用。问题似乎是脚本中的最后一行,即菜单指示应该如何出现。前一行很好地删除了这个类。我还尝试了$(“ul.taba”).filter(hash.addClass(“selected”);,但这也不起作用。在我的变量“hash”中似乎有一些问题,它无法与HTML中的锚标记正确链接。哦,是的,没有问题。检查
hash
是否正确接收值?是。如果我运行“alert(hash)”,它会在每次运行代码时弹出,并且具有正确的值。我想得越多,jQuery似乎就越好,问题出在HTML的某个地方,但我看不到它。当我看的时候,似乎我一切都对了,但是他的有效,而我的无效。我所能想到的是,你应该用示例页面覆盖你的工作,然后小步修改回到你想要的结果。我称之为“折射”。你能更准确地说什么不起作用吗?烧烤是否显示出一些工作上的成功?后退按钮功能有问题吗?也许一把JS小提琴会有帮助。嘿!我开始做JS提琴,但我不确定我是否可以包括烧烤插件?也许我可以…不确定。烧烤正在起作用。问题似乎是脚本中的最后一行,即菜单指示应该如何出现。前一行很好地删除了这个类。我还尝试了$(“ul.taba”).filter(hash.addClass(“selected”);,但这也不起作用。在我的变量“hash”中似乎有一些问题,它无法与HTML中的锚标记正确链接。哦,是的,没有问题。检查
hash
是否正确接收值?是。如果我运行“alert(hash)”,它会在每次运行代码时弹出,并且具有正确的值。我想得越多,jQuery似乎就越好,问题出在HTML的某个地方,但我看不到它。当我看的时候,似乎我一切都对了,但是他的有效,而我的无效。我所能想到的是,你应该用示例页面覆盖你的工作,然后小步修改回到你想要的结果。我称之为“折射”
<ul class="tabNavigation">

  <li>
      <a class="" href="#Contact">
        contact
      </a>
  </li>  

  <li>
      <a class="" href="#Portfolio">
        portfolio
      </a>
  </li>

  <li>
      <a class="" href="#Services">
        services
      </a> 
  </li> 

  <li>
      <a class="" href="#About">
        about
      </a>
  </li>

  <li>
      <a href="#Landing" class="selected">
        home
      </a>
  </li>  

</ul>
$(window).bind('hashchange', function () {

  var hash = window.location.hash || '#Landing';
  $(".Content").animate({marginTop: "1500px"}, '500', 
    function(){tabContainers.hide().filter(hash).show(), function(){}}); 
  $(".Content").animate({marginTop: "0px"}, '500');
  $("ul.tabNavigation a").removeClass("selected");
  $("a[hash=" + hash + "]").addClass("selected");
});
ul.tabNavigation li
{
  position: relative;
  display: inline-block;
  float: right;
  font-family: "Baskerville";
  font-size: 18px;
  list-style-type: none;
  text-align: left;
  margin-top: 0;
}

ul.tabNavigation li a
{
  display: inline-block;
  text-decoration: none;
  color: white;
  margin-right: 5px;
  margin-top: 0;
}

ul.tabNavigation li a:hover
{
  display: inline-block;
  text-decoration: none;
  color: #91A493;
  margin-right: 5px;
}

ul.tabNavigation li a.selected
{
  color: blue;
}