jQuery导航问题。链接仅适用于一个div

时间:2011-06-04 02:08:49

标签: jquery html navigation scrollto

我正在尝试创建一个只使用一个大页面和一个3x3 div组件的网站,其中用户一次只能看到一个div,jQuery将使用链接指向屏幕以动画显示所需的div。 我从 this free code page 得到了这个想法,但我希望链接位于每个div中,而不是在自己容器内的外部。

现在我的'home'div(中央部分)上的链接工作正常,动画都正常工作但是当我复制+粘贴html中的链接代码到另一个div时,他们拒绝工作。我不知道为什么,因为所有的div都是相同的,代码似乎与引用中央div无关。

html代码与此类似(只有9个链接):

<div id="one" class="elements">
  <div class="block25">
    <span class="go1"><img src="images/go1.png" alt="One"><h4>ONE</h4></span>
  </div>
</div>

虽然jQuery如此:

$('.go1').click(function(){
     $('#one').click();
     });

$('#one').click(function(){;
    currentId = $('selected').attr('id');
    goId = section[0][0];
    $target = $('div[id=' + goId +']');
    $paneTarget.stop().scrollTo($target, 800, { margin: true } );
    $('div[id=' + currentId +'], div[id=' + goId +']').toggleClass('selected');
});

我做错了什么?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我认为这是因为您的脚本引用了div s IDID应该是页面唯一的。因此,该脚本只适用于一个div,因为a)编写它只能访问一个div和b)因为ID是唯一的。

要解决此问题,您可以做两件事:

  1. 为每个div提供一个唯一的ID并根据需要多次复制脚本(如果您不确定代码,则最简单)。

  2. div提供相同的class,并修改适用于每个类实例的代码。