js實現(xiàn)自定義滾動條的示例
更新時間:2020年10月27日 08:35:51 作者:星輝
這篇文章主要介紹了js實現(xiàn)自定義滾動條的示例,幫助大家制作JS特效,美化自身網(wǎng)頁,感興趣的朋友可以了解下
自定義滾動條
目錄
- 代碼實例
- 代碼解析
- 下載源碼鏈接
代碼實例
* {
padding: 0;
margin: 0;
}
#box1 {
width: 500px;
height: 20px;
background: #999;
position: relative;
margin: 20px auto;
}
#box2 {
width: 20px;
height: 20px;
background: green;
position: absolute;
}
#box3 {
width: 0;
height: 0;
margin: 20px auto;
}
#box3 img {
width: 100%;
height: 100%;
}
<div id="box1">
<div id="box2"></div>
</div>
<div id="box3">
<img src="./1.jpg">
</div>
// 獲取dom元素
var oBox1 = document.getElementById('box1');
var oBox2 = document.getElementById('box2');
var oBox3 = document.getElementById('box3');
// 按下滾動條后的操作
oBox2.onmousedown = function(e) {
// 獲取事件的必備操作,保證事件被獲取
var oEvent = e || event
// 保證只有被按下滾動條后才能執(zhí)行此函數(shù)
document.onmousemove = function(e) {
var oEvent = e || event
var l = oEvent.clientX - oBox1.offsetLeft
// 獲取滾動條可活動的寬度范圍
var wid = oBox1.offsetWidth - oBox2.offsetWidth
if (l < 0) {
l = 0
} else if (l > wid) {
l = wid
}
// 位置定位
oBox2.style.left = l + 'px'
// 根據(jù)滾動條位置獲得比例
var scale = l / wid
// 圖片的寬度和高度
var w = 3264 * scale
var h = 4080 * scale
// oBox3.style.cssText是加在內(nèi)嵌style中的
oBox3.style.cssText += 'width:' + w + 'px;height:' + h + 'px;'
}
// 保證鼠標松開后事件不再執(zhí)行
document.onmouseup = function() {
document.onmousemove = null
document.onmousedown = null
}
}
代碼解析
elem.style.cssText是加在內(nèi)嵌style中的
// oBox3.style.cssText是加在內(nèi)嵌style中的 oBox3.style.cssText += 'width:' + w + 'px;height:' + h + 'px;
下載源碼鏈接
以上就是js實現(xiàn)自定義滾動條的示例的詳細內(nèi)容,更多關(guān)于js實現(xiàn)自定義滾動條的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
layui字體圖標 loading圖標靜止不旋轉(zhuǎn)的解決方法
今天小編就為大家分享一篇layui字體圖標 loading圖標靜止不旋轉(zhuǎn)的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
JS判斷是否為數(shù)字,是否為整數(shù),是否為浮點數(shù)的代碼
2010-04-04

