网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

js如何实现浏览器滚动条-创新互联

小编给大家分享一下js如何实现浏览器滚动条,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联建站主要从事成都网站建设、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务罗源,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

效果图:

js如何实现浏览器滚动条

代码如下:




 
 仿浏览器滚动条
 
 *{margin: 0;padding: 0;}
 #demo{width: 300px;height: 500px;border: 1px solid red;margin:100px;position:relative;overflow:hidden;}
 p{padding:5px 20px 5px 5px;font-size:26px;position:relative;}
 #scrll{width:18px;border-radius:18px;position:absolute;top:0;right:0;background:red;cursor:pointer;}
 



 我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容我是文字内容

 
 (function(window){  function $(id){   return document.getElementById(id);  };  // 获取对象  var dp = $("dp"),demo = $("demo"),scrll = $("scrll");  // 获取dp的长度  var dpHeight = dp.offsetHeight;  // 获取demo的长度  var demoHeight = demo.offsetHeight;  // 根据比值计算scrll的长度  var scrllHeight = demoHeight * demoHeight / dpHeight ;  // 如果内容长度小于窗口长度,则滚动条不显示  if( dp.offsetHeight < demo.offsetHeight){   scrllHeight = 0;  };  scrll.style.height = scrllHeight + "px";  // 获取滚动条和内容移动距离的比例  var bilu = ( dp.offsetHeight - demo.offsetHeight ) / (demo.offsetHeight - scrll.offsetHeight);  // 滚动条滚动事件  scrll.onmousedown = function(event){   // event兼容性解决   // console.log(demo.offsetTop)   var event = event || window.event;   // 获取鼠标按下的页面坐标   // 滚动条滚动时只有top值改变,所有不需要获取pageX   var pageY = event.pageY || event.clientY + document.documentElement.scrollTop;   // 获取鼠标在scrll内的坐标   var scrllY = pageY - demo.offsetTop - scrll.offsetTop;   // 给document绑定鼠标移动事件   document.onmousemove = function(event){   var event = event || window.event;   // 获取鼠标移动时的坐标   var moveY = event.pageY || event.clientY + document.documentElement.scrollTop;   // 获取滚动条的移动坐标   var trueY = moveY - scrllY - demo.offsetTop ;   // 限制滚动条移动的范围   if( trueY < 0 ){    trueY = 0 ;   };   if( trueY > demo.offsetHeight - scrll.offsetHeight ){    trueY = demo.offsetHeight - scrll.offsetHeight;   };   scrll.style.top = trueY + "px";   //清除选中文字        window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();        // 获取文字区域移动的距离        var dpY = trueY * bilu ;        dp.style.top = - dpY + "px";   }  };  // 鼠标抬起清除鼠标移动事件  document.onmouseup = function(){   document.onmousemove = null;  }  })(window)

以上是“js如何实现浏览器滚动条”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联网站建设公司行业资讯频道!

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:js如何实现浏览器滚动条-创新互联
浏览路径:http://bjjierui.cn/article/pogci.html

其他资讯