我正在制作一个侧栏,目前在顶部播放音乐,下面是播放队列。专辑图片有一个按钮,可以调整图稿的大小以显示更多的播放队列。
播放队列也有jQuery nicescroll;
$('.playQ').niceScroll({
zindex: 1000000,
cursorborder: "0px solid #ccc",
cursorborderradius: "2px",
cursorcolor: "#ddd",
cursoropacitymin: 0.1
});
// Album Controls
$(".cover .controls .scale").click(function() {
if ($(this).parent().width() === 210) {
$(".currently_playing .cover").animate({
height: "50px",
width: "50px",
margin: "20px 100px 0 100px"
});
$(".currently_playing").animate({
height: "250px"
});
$(".cover .controls .scale").css({
'background-position' : 'top right'
});
$(".right-sidebar .nicescroll-rails").css({
top: "430px"
});
} else {
$(".currently_playing .cover").animate({
height: "210px",
width: "210px",
margin: "20px 20px 5px 20px"
});
$(".currently_playing").animate({
height: "410px"
});
$(".cover .controls .scale").css({
'background-position' : 'top left'
});
$(".right-sidebar .nicescroll-rails").css({
top: "270px"
});
}
});
问题是,在页面加载时,一切都按预期工作,但是在调整专辑图片的大小并且.playQ
向上移动时,滚动条保持精确到位,仍然可以滚动元素,只是在错误的地方,但是在打开必须触发调整大小事件的Google Chrome开发人员标签时,滚动条会定位到它应该的位置。
浏览StackOverflow,我尝试了几次尝试来解决这个问题;
$(".playQ").getNiceScroll().resize(); // No Effect
$(".playQ").getniceScroll().resize(); // No Effect
$(".playQ").getniceScroll().resize(); // No Effect
$(".playQ").niceScroll(); // No Effect
$('.playQ').live('click', function(e){ // Broke Script
$('body').on('click', '.playQ', function(e){ // No Effect