我正在使用来自http://manos.malihu.gr/的 Jquery 自定义内容滚动条,它似乎很受欢迎。我最初尝试使用它,然后切换到 Nicescroller,它最初工作正常,但后来我的功能碰壁了,现在又回到了这里......
我正在做的事情并不复杂。数据来自 AJAX 并被输入 DIV,然后在 AJAX 成功时将滚动条应用于 DIV。DIV 实际上用于显示表单错误消息,它周围的主要 HTML 是表单字段。我认为这无关紧要,但我想提供所有相关信息。
这是 AJAX 调用的“成功”部分:
success: function (data) {
$('#error_msg_div').html(data);
if (submit_status != "OK") //submit_status is a JS variable in data not set to OK
{ //alert(..) here. At alert pause, error_msg_div shows AJAXed response data.
//AJAXed response data has absolutely no reference to the DIV or the scroller
$("#error_msg_div").mCustomScrollbar({
theme:"dark",
scrollButtons:{
enable:true
},
updateOnContentResize:true
});
};
},
来自 AJAX 响应的示例数据(从 firebug 复制)如下所示:
<div class='err_no' style='left:0px;top:5px;'>1:</div><div style='left:22px;top:5px;' class='err_msg'>First name must have 2 to 20 alphabets only.</div>
<div class='err_no' style='left:0px;top:17px;'>2:</div><div style='left:22px;top:17px;' class='err_msg'>Middle initial can only be a single uppercase alphabet.</div>
所以有什么问题?AJAX 响应正常。在警报中,可以看到 DIV 填充了数据。在那之后, $("#error_msg_div").mCustomScrollbar({... 将 div 空白。firebug 中没有显示 JS 错误消息。
我尝试使用静态数据使用滚动条,它工作正常。唯一的主要区别是在我的纯静态 HTML 中的使用,这里是在静态测试 HTML 文件中,滚动条被称为:
(function($){
$(window).load(function(){
$("#xxxxxxxxscroll_div").mCustomScrollbar({
theme:"dark",
scrollButtons:{
enable:true
},
updateOnContentResize:true
});
});
})(jQuery);
我在这方面花了很多时间。我喜欢滚动条不要再放弃它了。一旦我弄清楚了这一点,我认为其余的功能集将很容易使用。一个很可能不相关的后续问题是,当我“销毁”滚动条时,Div 上的 mCustomScrollbar 方法仍然显示。这只是一个附带问题...我不是 JS 专家,但是当滚动文档指出该元素已恢复到其调用前状态时,我原以为这种方法会消失。正确的?
谢谢!我对这个论坛比较陌生。如果格式或细节措辞不当,请见谅。