0

我很难弄清楚这一点。我想打开一个从链接到锚点的选项卡。这就是我所拥有的。我正在使用jquery1.8.3。它工作正常,但我不确定发生了什么。

        jQuery(function ($){

        $(".tabContents").hide();
        $(".tabContents:first").show();

        $("#tabContainer ul li a").click(function(e){
            e.preventDefault();
            var activeTab = $(this).attr("href");
            $("#tabContainer ul li a").removeClass("active");
            $(this).addClass("active");
            $(".tabContents").hide();
            $(activeTab).fadeIn();
        });
          });
         $('a.tlink').on('click', function(evt) {
            evt.preventDefault();
            var whereTo = $(this).attr('goto');
            $tabs = $("#tabContainer li");
           $tabs.find('a[href=#' + whereTo + ']').trigger('click');
            //alert(attr('name'));
        //alert( $('#'+whereTo+' a').offset().top );
            $('html, body').animate({
                scrollTop: $('#'+whereTo+' a').offset().top
            });
        });

这是示例

谢谢你。

4

2 回答 2

0

我会删除 <a name="anchor"> 元素并将链接的 href 设置为“#tab2”(以保持方法一致),而是从代码中删除“#”,如下所示:

$tabs.find('a[href=' + whereTo + ']').trigger('click');

...否则,您的选择器字符串中将有一个双“#”。

于 2013-02-07T21:01:15.853 回答
0

在示例中,您没有goto锚点,

工作示例,我添加了:http goto='tab2': //jsfiddle.net/KgaKk/36/

于 2013-02-07T20:40:48.387 回答