JQuery+DIV自定义滚动条样式的具体实现
JQuery计算滚动条长度和位置,代码如下:
javascript
<scripttype="text/javascript">
varscrMinHeight=1;//滚动条最小高度
varscrMaxHeight=0;//滚动条最大高度
varscrDefualtTop=80;//滚动条默认位置
varscrHeight=0;
//初始化滚动条
functionInitScroll(){
scrMaxHeight=$("#mainScrollContent").height();//文本框高度
scrHeight=document.getElementById("mainScrollContent").scrollHeight;//滚动文本高度
scrHeight=parseInt((scrMaxHeight/scrHeight)*scrMaxHeight);
if(scrHeight<=scrMinHeight){scrHeight=scrMinHeight;}
if(scrHeight>=scrMaxHeight){$("#scrollContent").hide();}
else{
$("#scrollContent").show();
$("#scrollContent.tiao_mid").css("height",(scrHeight-19)+"px");
}
}
$(document).ready(function(){
$(".bod").height(($(document).height()-80)+"px");
$("#mainScrollContent").height(($(document).height()-125)+"px");
scrMaxHeight=($(document).height()-125);//滚动条最大高度
$("#scrollBody").height(($(document).height()-125)+"px");
$("#scrollBodyBack").height(($(document).height()-125)+"px");
InitScroll();
$("#mainScrollContent").scroll(function(){
ChangeScroll();
});
vary1=0;
$("#scrollContent").mousedown(function(event){
varscrContentTop=$("#scrollContent").css("top");
y1=event.clientY-parseInt(scrContentTop.replace("px",""));
$("#scrollContent").mousemove(function(event){
if((event.clientY-y1)<scrDefualtTop){
$("#scrollContent").css("top",scrDefualtTop+"px");
}
elseif((event.clientY-y1)>(scrDefualtTop+scrMaxHeight-scrHeight)){
$("#scrollContent").css("top",(scrDefualtTop+scrMaxHeight-scrHeight)+"px");
}
else{
$("#scrollContent").css("top",(event.clientY-y1)+"px");
}
ChangeScrollContent();
});
}).mouseup(function(){
$("#scrollContent").unbind("mousemove");
}).mouseout(function(){
$("#scrollContent").unbind("mousemove");
});
});
//改变滚动内容位置
functionChangeScrollContent(){
varscrTop=$("#scrollContent").css("top");
varst=parseInt(scrTop.replace("px",""));
st=((st-scrDefualtTop)*document.getElementById("mainScrollContent").scrollHeight)/scrMaxHeight
$("#mainScrollContent").scrollTop(st);//滚动的高度
}
//改变滚动条位置
functionChangeScroll(){
varscrTop=$("#mainScrollContent").scrollTop();//滚动的高度
scrTop=(scrTop*scrMaxHeight)/document.getElementById("mainScrollContent").scrollHeight+scrDefualtTop;
$("#scrollContent").css("top",scrTop+"px");
}
</script>
滚动区域内容DIV:
html
<divclass="jtc_neir"id="Div1"style="height:100px;">
营业总收入:11.66亿元(同比增长-1.75%)
<br/>
<ahref="bank.aspx">dddd</a>净利润:0.19亿元(同比增长23.72%)
<br/>
每股收益:0.04元
<br/>
净资产收益率:1.58%
<br/>
毛利率:12.22%(同比增长39.89%)
<br/>
总资产:30.46亿元(同比增长-7.14%)<br/>
as大苏打撒旦撒
<br/>
阿斯蒂芬多个地方营业总收入:11.66亿元(同比增长-1.75%)
<br/>
净利润:0.19亿元(同比增长23.72%)
<br/>
每股收益:0.04元
<br/>
净资产收益率:1.58%
<br/>
毛利率:12.22%(同比增长39.89%)
<br/>
总资产:30.46亿元(同比增长-7.14%)<br/>
as大苏打撒旦撒
<br/>
阿斯蒂芬多个地方营业总收入:11.66亿元(同比增长-1.75%)
<br/>
净利润:0.19亿元(同比增长23.72%)
<br/>
每股收益:0.04元
<br/>
净资产收益率:1.58%
<br/>
毛利率:12.22%(同比增长39.89%)
<br/>
总资产:30.46亿元(同比增长-7.14%)<br/>
as大苏打撒旦撒
<br/>
阿斯蒂芬多个地方营业总收入:11.66亿元(同比增长-1.75%)
<br/>
净利润:0.19亿元(同比增长23.72%)
<br/>
每股收益:0.04元
<br/>
净资产收益率:1.58%
<br/>
毛利率:12.22%(同比增长39.89%)
<br/>
总资产:30.46亿元(同比增长-7.14%)<br/>
as大苏打撒旦撒
<br/>
阿斯蒂芬多个地方营业总收入:11.66亿元(同比增长-1.75%)
<br/>
净利润:0.19亿元(同比增长23.72%)
<br/>
每股收益:0.04元
<br/>
净资产收益率:1.58%
<br/>
毛利率:12.22%(同比增长39.89%)
<br/>
总资产:30.46亿元(同比增长-7.14%)<br/>
as大苏打撒旦撒
<br/>
阿斯蒂芬多个地方</div>
<divclass="jtc_tiao"style="background-color:rgb(196,206,208);z-index:2;"id="Div2">
</div>
<divclass="jtc_tiao"style="background-color:rgb(222,222,222);z-index:1;width:16px;"
id="Div3">
</div>
<divclass="jtc_tiao"id="Div4">
<divclass="tiao_up">
</div>
<divclass="tiao_mid">
</div>
<divclass="tiao_bottom">
</div>
</div>
主要样式:
css
.jtc_neir{margin-left:20px;margin-right:20px;color:#000000;font-size:12px;background:none;line-height:32px;overflow-y:scroll;overflow-x:hidden;
scrollbar-3dlight-color:rgb(222,222,222);
scrollbar-arrow-color:rgb(222,222,222);
scrollbar-base-color:rgb(222,222,222);
scrollbar-darkshadow-color:rgb(222,222,222);
scrollbar-face-color:rgb(222,222,222);
scrollbar-highlight-color:rgb(222,222,222);
scrollbar-shadow-color:rgb(222,222,222);}
.jtc_tiao{width:8px;position:absolute;top:80px;right:20px;z-index:10;}
.tiao_up{width:8px;height:10px;background:url(../images/scrollbar-3.jpg)lefttopno-repeat;line-height:0px;overflow:hidden;}
.tiao_mid{width:8px;background:url(../images/scrollbar-3.jpg)-39pxcenter repeat-y;line-height:0px;overflow:hidden;}
.tiao_bottom{width:8px;height:10px;background:url(../images/scrollbar-3.jpg)-13pxbottomno-repeat;font-size:0;line-height:0px;overflow:hidden;}
相关文章
- jQuery实现滚动时动态加载页面内容详解编程语言
- jQuery 实现图片预加载详解编程语言
- 利用FireBug使JQuery的学习更加轻松愉快详解编程语言
- jQuery和ztree实现动态树形多选菜单详解编程语言
- jquery实现BootStrap的弹出框拖动,及鼠标滚轮改变BootStrap的弹出框大小详解编程语言
- JQuery从头学起第三讲
- jQuery选中select控件无法设置selected的解决方法
- Jquery中Ajax缓存带来的影响的解决方法
- jQuery链式操作如何实现以及为什么要用链式操作
- Yii-自定义删除确认弹框(zyd)jquery实现代码
- JQuery的read函数与js的onload不同方式实现
- Jquery实现列表(隔行换色,全选,鼠标滑过当前行)效果实例
- jquery实现table鼠标经过变色代码
- jquery通过a标签删除table中的一行的代码
- Jquery实现自定义tooltip示例代码
- Jquery实现自定义弹窗示例
- Jquery实现自定义窗口随意的拖拽
- jquery选择器原理介绍($()使用方法)
- jquery显示*天*时*分*秒实现时间计时器
- JQuery判断radio是否选中并获取选中值的示例代码
- 一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
- jQuery实现的一个自定义Placeholder属性插件
- 使用jQuery实现input数值增量和减量的方法
- 原生js实现复制对象、扩展对象类似jquery中的extend()方法
- 使用jquery.validate自定义方法实现"手机号码或者固话至少填写一个"的逻辑验证