3

我正在使用 jQuery mCustomScrollbar 脚本来滚动一列中的内容元素id="scroll_box"。我还有几张图片(在其他列中),它们具有指向"scroll_box". 链接具有该语法:http://www.example.com/index.php?id=17#c33.

我正在使用该脚本在单击锚点后移动:

function scrollTo(hash) {
    location.hash = "#" + hash;
}

那段代码工作正常,但只有当我禁用 mCustomScrollbar 脚本时——所以我没有“好看”和工作的滚动条。当它打开时,滚动条看起来和工作正常,但锚链接不起作用......

我的 mCustomScrollbar 代码:

(function($){
$(window).load(function(){
    $("#scroll_box").mCustomScrollbar({
                callbacks:{
                    onScroll:function(){
                        onScrollCallback();
                    },
                    onTotalScroll:function(){
                        onTotalScrollCallback();
                    },
                    onTotalScrollOffset:40,
                    onTotalScrollBack:function(){
                        onTotalScrollBackCallback();
                    },
                    onTotalScrollBackOffset:20
                }
            });
    });
})(jQuery); 

是否可以将这两个脚本合并为一个工作?

4

1 回答 1

0

其实这个插件有很多疯狂的问题!这让我放弃它!我只是自定义我的自我滚动条并出于同样的原因从我的项目中删除这个插件。

但是我通过使用此解决方案将滚动固定到锚点:

$(document).ready(function() {

$("a").click(function() {
if($(this).attr('href') == "#top"){
//this bit is for wordpress, where top is default: .entry-title
var elID=".entry-title";
$(".jsoverflow").mCustomScrollbar("scrollTo",elID);
}else{ 
if ($(this).attr('href').indexOf("#") >= 0){
//this bit is for any other anchor
$(".jsoverflow").mCustomScrollbar("scrollTo",$(this).attr('href'));

}

}

});
});

它对我有用 100%,我从Get-Hub得到它。

于 2016-01-01T22:39:08.080 回答