slimScroll销毁不't取消绑定滚动事件
slimScroll destroy doesn't unbind the scroll events
我使用的是slimScroll jQuery插件,似乎destroy选项并没有完全破坏插件在网站上的效果。
例如,如果你试图销毁插件,然后滚动之前可滚动的内容,网站滚动功能就会停止工作。您可以使用滚动条滚动,而不是使用鼠标滚轮/触控板。
这是错误的复制品
注意以下几点:
- 用鼠标滚轮/轨迹板在先前可滚动的元素上滚动会阻止滚动
- 在先前可滚动的元素之外滚动可以按预期工作
- 如果你在销毁它之前滚动slimScroll直到它的底部,当销毁它时,它在任何情况下都能正常工作
我已经在存储库中报告了它,但没有给出答案。它似乎有点被抛弃了。我尝试了不同的解决方案,但没有一个能正常工作。
缺少一个正确的方法来销毁插件似乎是个问题。。。
jsfiddle中使用的代码:
$('.scrollable').slimScroll({
allowPageScroll: true,
height: '250px',
size: '10px',
alwaysVisible: true
});
$('.destroy').click(function(){
$('.scrollable').slimScroll({
destroy:true
});
});
问题是插件没有删除已注册的事件。这应该可以解决问题:
$('.destroy').click(function(){
$('.scrollable').slimScroll({
destroy:true
});
var $elem = $('.scrollable'),
events = jQuery._data( $elem[0], "events" );
if (events) {
jQuery._removeData( $elem[0], "events" );
}
});
相关文章:
- 如何销毁/删除/取消绑定SnapSVG.js
- 取消绑定主干视图事件
- 从父元素取消绑定滚动事件并绑定到子元素
- 使用Re-base时,在React中从状态绑定和取消绑定Firebase
- javascript onchange取消绑定错误|未定义
- 在javascript中取消绑定侦听器
- 在偶数侦听器块中绑定和取消绑定
- 取消绑定angular中的scope属性
- 根据文件类型取消绑定和重新绑定click事件处理程序
- 取消绑定而不是重新绑定
- 取消绑定/绑定单击jquery selectbox插件
- 取消绑定后未提交的表单
- 动态取消绑定eventListeners(垃圾收集)
- 取消绑定父节点和子节点
- 取消绑定由加载jQuery'的外部脚本添加的事件;s的getScript函数
- 正在取消绑定jQuery事件处理程序
- 取消绑定除特定命名空间之外的所有命名空间中的事件
- 删除和取消绑定主干中的子视图
- 取消绑定窗口.onbeforeunload()取消
- setTimeout vs. 事件绑定/取消绑定;什么更有效