CSS 侧边滑动栏 (大概叫这个吧...)

3 篇文章 0 订阅
3 篇文章 0 订阅


CSS 侧边滑动栏
(大概叫这个吧...)

介绍:

如果你想在网页的侧边加入滚动条。那你来对地方了。在下面的教程中,我将展示如何使用
HTML、JavaScript 和 CSS 来制作。


HTML 部分

index.html


首先肯定是要连 CSS 和 JS 的。
<!DOCTYPE html>
<html>

<head>
    <link rel="stylesheet" href="style.css">
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Side Bar</title>
</head>

<body>
    <script src="srcoll.js"></script>
</body>

</html>

然后加上div(main 是内容 sb 是侧边栏)

<!DOCTYPE html>
<html lang="en">

<head>
    <link rel="stylesheet" href="style.css">
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Side Bar</title>
</head>

<body>
    <div id="sb"></div>
    <div class="main"></div>
    <script src="srcoll.js"></script>
</body>

</html>

在Body里写入 οnscrοll=“sc()” 这样在滑动是就会执行function sc了(当然,你可以写在javascript里)

<!DOCTYPE html>
<html lang="en">

<head>
    <link rel="stylesheet" href="style.css">
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Side Bar</title>
</head>

<body onscroll="sc()">
    <div id="sb"></div>
    <div class="main"></div>
    <script src="srcoll.js"></script>
</body>

</html>

CSS 部分

style.css


随便写点吧
* {
    user-select: none;
}

body {
    background-color: #000;
}

#sb {
    position: fixed;
    top: 350px;
    right: -150px; /*找个看不见他的地方*/
    height: 240px;
    width: 60px;
    background-color: white;
    border-radius: 50px;
    transition: 0.3s; /*这个可以用 0.3秒 来滑动。*/
}

.main {
    width: 100%;
    height: 500vh;
}

JS 部分

srcoll.js


首先写一个function叫 sc
function sc() {



}

然后写如果滑动条位置大于 n ( n 为数字 )

function sc() {
    if (document.documentElement.scrollTop >= n) {
        
        } 
}

执行将滑动条的位置移出来,而小过n的话再移回去。

function sc() {
    if (document.documentElement.scrollTop >= 500) {
        document.getElementById('sb').style.right = '50px'
    } else { document.getElementById('sb').style.right = '-150px' } 
    //right可以改成left,或者任何地方。当然CSS 也要改,不然就像是飞过去一样
}

完整代码

index.html
srcoll.js
style.css


index.html
<!DOCTYPE html>
<html lang="en">

<head>
    <link rel="stylesheet" href="style.css">
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Side Bar</title>
</head>

<body onscroll="sc()">
    <div id="sb"></div>
    <div class="main"></div>
    <script src="srcoll.js"></script>
</body>

</html>

scroll.js
function sc() {
    if (document.documentElement.scrollTop >= 500) {
        document.getElementById('sb').style.right = '50px'
    } else { document.getElementById('sb').style.right = '-150px' }
}

style.css
* {
    user-select: none;
}

body {
    background-color: #000;
}

#sb {
    position: fixed;
    top: 350px;
    right: -150px;
    height: 240px;
    width: 60px;
    background-color: white;
    border-radius: 50px;
    transition: 0.354s;
}

.main {
    width: 100%;
    height: 500vh;
}

整个html档案
<!DOCTYPE html>
<html lang="en">

<head>
    <style>
        * {
            user-select: none;
        }
        
        body {
            background-color: #000;
        }
        
        #sb {
            position: fixed;
            top: 350px;
            right: -150px;
            height: 240px;
            width: 60px;
            background-color: white;
            border-radius: 50px;
            transition: 0.354s;
        }
        
        .main {
            width: 100%;
            height: 500vh;
        }
    </style>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Side Bar</title>
</head>

<body onscroll="sc()">
    <div id="sb"></div>
    <div class="main"></div>
    <script>
        function sc() {
            if (document.documentElement.scrollTop >= 500) {
                document.getElementById('sb').style.right = '50px'
            } else {
                document.getElementById('sb').style.right = '-150px'
            }
        }
    </script>
</body>

</html>

就这,没了。拜。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值