JS实现鼠标框选效果完整实例
作者:cherry
这篇文章主要介绍了JS实现鼠标框选效果,可实现鼠标点击出现框选效果的功能,同时下方实时显示框选大小,涉及javascript鼠标事件的响应与页面元素的动态运算技巧,需要的朋友可以参考下
本文实例讲述了JS实现鼠标框选效果的方法。分享给大家供大家参考,具体如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>鼠标框选效果</title>
<style>
*{
padding:0;
margin:0;
}
#bottom{
position:absolute;
bottom:0px;
width:100%;
height:40px;
border:1px solid #000;
background:#000;
color:#fff;
}
.tempDiv{
border:1px dashed blue;
background:#5a72f8;
position:absolute;
width:0;
height:0;
filter:alpha(opacity:10);
opacity:0.1
}
</style>
<script type = "text/javascript">
window.onload = function(){
var stateBar = document.getElementById("bottom");
document.onmousedown = function(e){
var posx = e.clientX;
var posy = e.clientY;
var div = document.createElement("div");
div.className = "tempDiv";
div.style.left = e.clientX+"px";
div.style.top = e.clientY+"px";
document.body.appendChild(div);
document.onmousemove = function(ev){
div.style.left = Math.min(ev.clientX, posx) + "px";
div.style.top = Math.min(ev.clientY, posy) + "px";
div.style.width = Math.abs(posx - ev.clientX)+"px";
div.style.height = Math.abs(posy - ev.clientY)+"px";
stateBar.innerHTML = "MouseX: " + ev.clientX + "<br/>MouseY: " + ev.clientY;
document.onmouseup = function(){
div.parentNode.removeChild(div);
document.onmousemove = null;
document.onmouseup = null;
}
}
}
}
</script>
</head>
<body>
<div id = "bottom"></div>
</body>
</html>
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
