<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<title></title>
<style>
* {
margin: 0;
padding: 0;
}
html,
body {
width: 100%;
height: 100%;
}
#box {
width: 100%;
height: 100%;
overflow: hidden;
}
.ball {
width: 100%;
height: 500px;
}
#scroll {
width: 6px;
height: 96%;
position: fixed;
top: 2%;
right: 5px;
border-radius: 3px;
background-color: rgba(235, 233, 233, 0.5);
z-index: 9998;
opacity: 1;
}
#scrollBar {
position: absolute;
z-index: 9999;
width: 6px;
height: 20px;
border-radius: 3px;
left: 0;
top: 0;
background-color: #383838;
}
</style>
</head>
<body style="overflow:hidden;">
<div id="box">
<div id="content">
<p
class
="ball" style="background-color:lightpink;"></p>
<p
class
="ball" style="background-color:blue;"></p>
<p
class
="ball" style="background-color:yellow;"></p>
<p
class
="ball" style="background-color:lightpink;"></p>
<p
class
="ball" style="background-color:blue;"></p>
<p
class
="ball" style="background-color:yellow;"></p>
</div>
</div>
<div id="scroll">
<div id="scrollBar"></div>
</div></body></html><script type="text/javascript">
var
content = document.getElementById("content");
var
box = document.getElementById("box");
var
scroll = document.getElementById("scroll");
var
scrollBar = document.getElementById("scrollBar");
var
data = 30;
var
_eight;
window.onresize =
function
(){
init();
}
function
init (){
_height = window.innerHeight * scroll.offsetHeight / content.offsetHeight;
scrollBar.style.height = _height + "px";
}
init();
box.addEventListener("DOMMouseScroll",
function
(e) {
var
e = e || event;
if
(e.detail > 0) {
box.scrollTop += data;
}
else
{
box.scrollTop -= data;
}
var
_top = box.scrollTop * (scroll.offsetHeight - scrollBar.offsetHeight) / (content.offsetHeight - window.innerHeight);
scrollBar.style.top = _top + "px";
});
box.addEventListener("mousewheel",
function
(e) {
var
e = e || event;
if
(e.wheelDelta > 0) {
box.scrollTop -= data;
}
else
{
box.scrollTop += data;
}
var
_top = box.scrollTop * (scroll.offsetHeight - scrollBar.offsetHeight) / (content.offsetHeight - window.innerHeight);
scrollBar.style.top = _top + "px";
});
</script>