JS响应鼠标点击实现两个滑块区间拖动效果


Posted in Javascript onOctober 26, 2015

本文实例讲述了JS实现的两个滑块区间拖动效果代码。分享给大家供大家参考,具体如下:

网页上的滑块功能如何实现呢?其实用JS就可以,这就是一个网页滑块,两个滑块可以任意拖动,形成一个滑块区间,而且代码兼容IE和其它主流的浏览器,两个滑块确定一个区间范围。

运行效果截图如下:

JS响应鼠标点击实现两个滑块区间拖动效果

在线演示地址如下:

具体代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title> js双滑块区间</title>
<style type='text/css'>
#range{position:relative;width:148px;height:2px;font-size:0;line-height:0;background:#fff;border:1px inset #9C9B97}
#meaBox{position:absolute;width:148px;height:4px;background:#ccc;top:-2px;border:1px inset #9C9B97;border-left:0;border-right:0;}
.mea{position:absolute;top:-5px;width:2px;height:10px;border:3px solid #fff;border-top:13px solid #3f8e55;}
#mea_l{left:0;}
#mea_r{right:0;border-top:13px solid #ff0000;}
</style>
</head>
<body>
<div id='range'>
 <div id='meaBox' onmousedown="change(this,event)"> </div>
 <div id='mea_l' class='mea' onmousedown="change(this,event)" ></div>
 <div id='mea_r' class='mea' onmousedown="change(this,event)" ></div>
</div>
<script type='text/javascript'>
var $id=function(o){return document.getElementById(o) || o;}
var change=function(o,e){
 var e = e ? e : window.event;
 if(!window.event) {e.preventDefault();}
 var init={
 mX: o.offsetLeft,
 lX: $id('mea_l').offsetLeft,
 rX: $id('mea_r').offsetLeft,
 dX: e.clientX
 };
 document.onmousemove=function(e){
 var e = e ? e : window.event;
 var dist=e.clientX-init.dX,
  len=init.mX + dist,
  l_x=init.lX,
  r_x=init.rX;
 switch (o.id){
  case 'mea_l':
  l_x=init.lX + dist;
  move();
  break;
  case 'mea_r':
  r_x=init.rX + dist;
  move();
  break;
  case 'meaBox':
  l_x=init.lX + dist;
  r_x=init.rX + dist;
  move2();
  break;
  default: break;
 }
 function move(){
  if(r_x > l_x + 20 && len>=0 && len<=140 ) {
  o.style.left=len+"px";
  $id('meaBox').style.left= l_x + 'px';
  $id('meaBox').style.width=r_x - l_x + 'px';
  }
 };
 function move2(){
  if(l_x>=0 && r_x <=140 ) {
  o.style.left=len+"px";
  $id('mea_l').style.left= l_x + "px";
  $id('mea_r').style.left= r_x +"px";
  }
 };
 }
 document.onmouseup=function(){
 document.onmousemove=null;
 document.onmouseup=null;
 }
}
</script>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript模仿msgbox提示效果代码
Jun 10 Javascript
jquery HotKeys轻松搞定键盘事件代码
Aug 30 Javascript
如何编写高质量JS代码(续)
Feb 25 Javascript
使用JavaScript脚本判断页面是否在微信中被打开
Mar 06 Javascript
详解node.js平台下Express的session与cookie模块包的配置
Apr 26 Javascript
Vue 项目代理设置的优化
Apr 17 Javascript
详解Angular5 路由传参的3种方法
Apr 28 Javascript
LayUI表格批量删除方法
Aug 15 Javascript
微信小程序实现文字跑马灯
May 26 Javascript
ant design实现圈选功能
Dec 17 Javascript
Vue+Openlayers自定义轨迹动画
Sep 24 Javascript
使用TS来编写express服务器的方法步骤
Oct 29 Javascript
javaScript实现可缩放的显示区效果代码
Oct 26 #Javascript
JS基于VML技术实现的五角星礼花效果代码
Oct 26 #Javascript
jquery获取url参数及url加参数的方法
Oct 26 #Javascript
JavaScritp添加url参数并将参数加入到url中及更改url参数的方法
Oct 26 #Javascript
angular.bind使用心得
Oct 26 #Javascript
详解JavaScript编程中正则表达式的使用
Oct 25 #Javascript
实例解析JS布尔对象的toString()方法和valueOf()方法
Oct 25 #Javascript
You might like
php str_pad 函数使用详解
2009/01/13 PHP
PHP编码规范的深入探讨
2013/06/06 PHP
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
php备份数据库类分享
2015/04/14 PHP
PHP实现的json类实例
2015/07/28 PHP
使用JQuery进行跨域请求
2010/01/25 Javascript
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
jQuery实现“扫码阅读”功能
2015/01/21 Javascript
JavaScript通过字典进行字符串翻译转换的方法
2015/03/19 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
值得分享的轻量级Bootstrap Table表格插件
2016/05/30 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
微信小程序 同步请求授权的详解
2017/08/04 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
vue+element-ui+axios实现图片上传
2019/08/20 Javascript
Vue.js实现大转盘抽奖总结及实现思路
2019/10/09 Javascript
基于JavaScript实现猜数字游戏代码实例
2020/07/30 Javascript
在Apache服务器上同时运行多个Django程序的方法
2015/07/22 Python
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
Python实现导出数据生成excel报表的方法示例
2017/07/12 Python
利用python如何在前程无忧高效投递简历
2019/05/07 Python
在Anaconda3下使用清华镜像源安装TensorFlow(CPU版)
2020/04/19 Python
Order by的几种用法
2013/06/16 面试题
采购部主管岗位职责
2014/01/01 职场文书
《地震中的父与子》教学反思
2014/04/10 职场文书
大学生党员学习焦裕禄精神思想汇报
2014/09/10 职场文书
村党的群众路线教育实践活动总结材料
2014/10/31 职场文书
先进员工事迹材料
2014/12/20 职场文书
银行求职信范文怎么写
2015/03/20 职场文书
物业项目经理岗位职责
2015/04/01 职场文书
离职信范本
2015/06/23 职场文书
幼师自荐信范文(2016推荐篇)
2016/01/28 职场文书
读鲁迅先生的经典名言
2019/08/20 职场文书
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python