首页前端开发JavaScriptHTML+CSS+JS 模仿 Win10 亮度调节效果

HTML+CSS+JS 模仿 Win10 亮度调节效果

时间2024-01-29 09:17:02发布访客分类JavaScript浏览561
导读:收集整理的这篇文章主要介绍了HTML+CSS+JS 模仿 Win10 亮度调节效果,觉得挺不错的,现在分享给大家,也给大家做个参考。HTML+CSS+JS模仿win10亮度调节效果代码<!doctyPE html><htm...
收集整理的这篇文章主要介绍了HTML+CSS+JS 模仿 Win10 亮度调节效果,觉得挺不错的,现在分享给大家,也给大家做个参考。

HTML+CSS+JS模仿win10亮度调节效果

代码

!doctyPE html>
    html>
    	head>
    		meta charset="utf-8">
    		tITle>
    模仿win10的亮度调节/title>
    		style>
			.control_bar{
    				height:200px;
    				width:500px;
    				border-bottom:3px solid #888888;
							}
			.control_bar_cursor{
    				height:25px;
    				width:8px;
    				background: #505151;
    				border-radius:5px;
    				margin-top:-12.5px;
    				position:relative;
    				top:0;
    				left:0;
			}
			.control_bar_cursor:hover{
    				background:white;
			}
			#control_bar_mask{
    				margin-top:-203px;
    				width:0px;
			}
			.mask{
    				position:fixed;
    				bottom:0;
    				top:0;
    				left:0;
    				right:0;
    				background:black;
    				z-index:-1;
			}
    		/style>
    	/head>
    	body>
    		p class="mask">
    /p>
    		p class="control_bar">
    /p>
    		p class="control_bar" style="border-bottom:3px solid #505151;
    " id="control_bar_mask">
    /p>
    		p class="control_bar_cursor">
    /p>
    	/body>
    	script>
		window.onload = function(){
    			VAR control_bar = document.getElementsByclassname("control_bar")[0];
    			var control_bar_mask = document.getElementById("control_bar_mask");
    			var control_bar_cursor = document.getElementsByClassName("control_bar_cursor")[0];
    			var def_left = control_bar_cursor.offsetLeft;
    			var mask = document.getElementsByClassName("mask")[0];
			document.body.onmousedown = function(){
				window.onmouSEMove = function(){
    					var cursor_X = event.clientX;
    					var cursor_Y = event.clientY;
					if(cursor_X  def_left){
    						control_bar_cursor.style.left = 0;
					}
    else if(cursor_X >
 control_bar.offsetWidth + def_left){
    						control_bar_cursor.style.left = control_bar.offsetWidth;
					}
else{
    						control_bar_cursor.style.left = cursor_X - def_left + "px";
					}
    					//亮度比					var PRoportion = parseInt(control_bar_cursor.offsetLeft - def_left) / parseInt(control_bar.offsetWidth - 1);
    					control_bar_mask.style.width = proportion * control_bar.offsetWidth + "px";
    					mask.style.opacity = 1 - proportion;
					}
    ;
				window.onmouseup = function(){
    					window.onmousemove = null;
				}
    ;
			}
    ;
		}
    ;
    	/script>
    /html>
    

1.将各个元素的样子写出来

这里为了方便好观察给body添加了一个背景颜色

html

p class="control_bar">
    /p>
    p class="control_bar" style="border-bottom:3px solid #505151;
    "  id="control_bar_mask>
    /p>
    p class="control_bar_cursor">
    /p>
    

css

body{
        background:back;
}
.control_bar{
        height:200px;
        width:500px;
        border-bottom:3px solid #888888;
}
.control_bar_cursor{
        height:25px;
        width:8px;
        background: #505151;
        border-radius:5px;
}
    

效果图

2. 将各个元素叠到一起

css

body{
        background:black;
}
.control_bar{
        height:200px;
        width:500px;
        border-bottom:3px solid #888888;
}
.control_bar_cursor{
        height:25px;
        width:8px;
        background: #505151;
        border-radius:5px;
        margin-top:-12.5px;
        position:relative;
        top:0;
        left:0;
}
.control_bar_cursor:hover{
        background:white;
}
#control_bar_mask{
        margin-top:-203px;
        width:100px;
}
    

这里为了显示遮罩效果把遮罩层的p宽度设小了

3. 添加js

js

window.onload = function(){
        var control_bar = document.getElementsByClassName("control_bar")[0];
        var control_bar_mask = document.getElementById("control_bar_mask");
        var control_bar_cursor = document.getElementsByClassName("control_bar_cursor")[0];
        var def_left = control_bar_cursor.offsetLeft;
    document.body.onmousedown = function(){
        window.onmousemove = function(){
                var cursor_X = event.clientX;
                var cursor_Y = event.clientY;
            if(cursor_X  def_left){
                    control_bar_cursor.style.left = 0;
            }
    else if(cursor_X >
 control_bar.offsetWidth + def_left){
                    control_bar_cursor.style.left = control_bar.offsetWidth;
            }
else{
                    control_bar_cursor.style.left = cursor_X - def_left + "px";
            }
                var proportion = parseInt(control_bar_cursor.offsetLeft - def_left) / parseInt(control_bar.offsetWidth - 1);
                control_bar_mask.style.width = proportion * control_bar.offsetWidth + "px";
        }
    ;
        window.onmouseup = function(){
                window.onmousemove = null;
        }
    ;
    }
    ;
}
    ;
    

4. 添加一个mask用控制条来控制其透明度达到亮度调节效果

p class="mask">
    /p>
    
.mask{
        position:fixed;
        bottom:0;
        top:0;
        left:0;
        right:0;
        background:black;
        z-index:-1;
}
    
window.onload = function(){
        var control_bar = document.getElementsByClassName("control_bar")[0];
        var control_bar_mask = document.getElementById("control_bar_mask");
        var control_bar_cursor = document.getElementsByClassName("control_bar_cursor")[0];
        var def_left = control_bar_cursor.offsetLeft;
        var mask = document.getElementsByClassName("mask")[0];
    document.body.onmousedown = function(){
        window.onmousemove = function(){
                var cursor_X = event.clientX;
                var cursor_Y = event.clientY;
            if(cursor_X  def_left){
                    control_bar_cursor.style.left = 0;
            }
    else if(cursor_X >
 control_bar.offsetWidth + def_left){
                    control_bar_cursor.style.left = control_bar.offsetWidth;
            }
else{
                    control_bar_cursor.style.left = cursor_X - def_left + "px";
            }
                //亮度比            var proportion = parseInt(control_bar_cursor.offsetLeft - def_left) / parseInt(control_bar.offsetWidth - 1);
                control_bar_mask.style.width = proportion * control_bar.offsetWidth + "px";
                mask.style.opacity = 1 - proportion;
        }
    ;
        window.onmouseup = function(){
                window.onmousemove = null;
        }
    ;
    }
    ;
}
    ;
    

推荐教程:《HTML教程》

以上就是HTML+CSS+JS 模仿 Win10 亮度调节效果的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

htmlwin10

若转载请注明出处: HTML+CSS+JS 模仿 Win10 亮度调节效果
本文地址: https://pptw.com/jishu/590889.html
HTML如何设置网页标题? html文档的基本结构由哪三对标签负责组织

游客 回复需填写必要信息