0

以下是设置:

$(function()
{
    $('.info').jScrollPane(
        {showArrows: true, hijackInternalLinks: true, animateScroll: true}
    );
}); 

问题是animateScroll: true与箭头冲突,但我的内部锚链接需要它。

我认为这将解决冲突。当您单击箭头按钮时:<a class="jspArrow jspArrowDown jspActive"</a>它会将 jScrollPane 设置更改为 animateScroll: false然后当您取消单击时它会恢复为animateScroll: true

我希望这是有道理的。任何帮助都会很棒。

编辑

很抱歉没有早点回来。我已经设置了一个演示,你可以看到向下箭头不起作用。我认为它与 animateScroll: true

http://jsfiddle.net/sVSsy/

谢谢

4

4 回答 4

1

当 DIV 的宽度约为600px时,使用您需要的两个选项在官方scroll_to_animate.html 演示页面上没有看到任何问题。

解决方案是使用jScrollPane arrowButtonSpeed 选项,在使用较小的 DIV 时使用默认值0以外的值,例如在使用某些浏览器(如 Chrome)时使用300px宽度。

此 jsfiddle 更新还删除了重复鼠标脚本的资产,将重复的 ID 'one' 替换为 DIV 内容的附加 ID 'four',因为 ID 只能使用一次。您将看到其他速度设置及其默认值,您可以对 DIV 大小的任何更改进行试验。

这是更新的 jsfiddle:http:
//jsfiddle.net/sVSsy/3/

于 2012-05-15T13:46:22.040 回答
0

尝试使用您想要的属性来破坏和重建它。

var api= $('#element').data('jsp');
api.destroy();
$('#element').jScrollPane({animateScroll: true});
于 2012-05-11T06:54:30.897 回答
0

你尝试过类似的东西:

$('yourelement').click(function(){
    if($('panedelement').jScrollPane.animateScroll === true)
        $('panedelement').jScrollPane.animateScroll = false;
    else
        $('panedelement').jScrollPane.animateScroll = true
});
于 2012-05-15T07:21:20.727 回答
-1

您可以绑定到 onmousedown 和 onmouseup 事件:

http://www.w3schools.com/jsref/event_onmousedown.asp http://www.w3schools.com/jsref/event_onmouseup.asp

因此,在鼠标向下箭头时,您会将 animateScroll 设置为 false,而在鼠标向上时,您会将 animateScroll 设置为 true。

于 2012-05-09T18:25:51.057 回答