jQuery localScroll - 不使用具有异常标点/字符的链接

时间:2012-03-04 16:49:21

标签: jquery jquery-plugins scrollto

我们在大学维基上使用名为localScroll的伟大插件和scrollTo,这使得这个滚动任务非常简单,效果很好。维基有一个自动目录,用于链接到任何h1到h4标题的较长页面。

我无法解决一个问题:

当我们维基上的标题包括括号,感叹号或问号等时,平滑滚动效果不起作用。 (标题和#links在wiki中具有与标题文本匹配的自动锚标记)。它的配置简单如下:

    $('.content-wrapper').localScroll ({
    duration:900,         
    });

/马

1 个答案:

答案 0 :(得分:0)

您可能能够在初始化滚动插件之前解析href和相应的锚ID以从两者中删除特殊字符。没有看到以下使用的href的实际页面和协议是这个概念:

var $links=$('.someClass a');

$links.each(function(){
    var href=$(this).attr('href');
    /* find corresponding anchor */
    var matchAnchor= $('[id="'+href+'"]');
    /* remove all special chars */
    href=href.replace(/\W/g,'');
    /* replace link href*/
    $(this).attr('href', '#'+href);

    /* replace anchor id*/
    matchAnchor.attr('id', href);   

});