在对jquery/scrollbar/ target=_blank class=infotextkey>jquery滚动条进行样式美化时,可以设置左边菜单项div的overflow-x:auto;overlfow-y:auto;这样会自动生成滚动条。
可以通过修改滚动条的样式,来隐藏自动生成的滚动条,这里分享二种方法:
法1:利用css提供的样式,一共是8种属性吧,在这里不做详细介绍,网上很多这方面的资料。
法2:写一个新的滚动条,即不用div自带的滚动条。利用jquery写一个滚动条,也借鉴了只有竖向滚动条的程序。
jquery滚动条的实现思路:
目标div 即需要生成滚动条的div,里面嵌套了3个div,分别是用于显示内容的div_content,显示竖向滚动条的div_H,显示横向滚动条的div_W,具体布局就是按照自带滚动条的div的布局一样,然后显示滚动条的div即div_H和div_W有各自包含了3个div,即左右箭头2个,滚动条1个。
例子:
复制代码 代码示例:
if($(_self).children(".jscroll-c").height()==null){
//添加内容框(div)
$(_self).wrapInner("<div class='jscroll-c' style='top:0px;z-index:9999;zoom:1;position:relative;'></div>");
//添加竖向滚动条
$(_self).append("<div class='jscroll-e' unselectable='on' style='height:97.5%;top:0px;right:0;-moz-user-select:none;position:absolute;overflow:hidden;z-index:10000;'><div class='jscroll-u' style='position:absolute;top:0px;width:100%;right:0;background:blue;overflow:hidden'></div><div class='jscroll-h' unselectable='on' style='background:green;position:absolute;left:0;-moz-user-select:none;border:1px solid'></div><div class='jscroll-d' style='position:absolute;bottom:0px;width:100%;left:0;background:blue;overflow:hidden'></div></div>");
//添加横向滚动条
$(_self).append("<div class='jscroll-s' unselectable='on' style='width:180px;bottom:0px;left:0;-moz-user-select:none;position:absolute;overflow:hidden;z-index:10000;'><div class='jscroll-l' style='position:absolute;bottom:0px;height:100%;left:0;background:blue;overflow:hidden'></div><div class='jscroll-g' unselectable='on' style='height:100%;background:green;position:absolute;left:0;-moz-user-select:none;border:1px solid'></div><div class='jscroll-r' style='position:absolute;bottom:0px;height:100%;right:0;background:blue;overflow:hidden'></div></div>");
}
有了以上代码,再加一些判断就完美了,包括div的内容是否超过了div的范围,监听事件的添加等,这个大家来动手实现。