Jquery實(shí)現(xiàn)彈性滑塊滑動(dòng)選擇數(shù)值插件
做了一個(gè)類似于阿里云彈性計(jì)算中的滑塊效果,可以自由滑動(dòng)滑塊,并且計(jì)算刻度?;趈Query實(shí)現(xiàn),小伙伴們不要忘記載入jquery哦
CSS
.main { margin: 0 auto; margin-top: 100px; width: 500px; font-family: 微軟雅黑; -webkit-user-select: none; } .contain { width: 500px; height: 40px; background-color: #E8E8E8; } .track { width: 16px; height: 46px; position: absolute; margin: -3px 0 0 0px; background-color: #2dacd1; cursor: pointer; } .valueC { height: 40px; position: absolute; margin: 0; background-color: #43BFE3; } .value span { position: absolute; text-align: right; height: 40px; line-height: 40px; color: #808080; border-right: 1px solid #dddddd; } .show { width: 45px; height: 30px; background-color: #333; color: #fff; text-align: center; line-height: 30px; position: absolute; opacity: 0.9; margin-top: -38px; margin-left: -15px; }
HTML
<div class="main"> <div class="contain"> <div class="show">0</div> <div class="valueC"></div> <div class="value"> </div> <div class="track"></div> </div> </div>
JS
<script type="text/javascript" src="/js/jquery-1.8.0.min.js"></script> <script type="text/javascript"> $(function(){ScrollerTrack.Init();}); var ScrollerTrack={ BodyWidth:500, MaxValue:300, CurrentX:0, CurrentValue:0, Count:0, Init:function(){ var mWidth=ScrollerTrack.BodyWidth; $(".contain").css("width",mWidth+"px"); var count=ScrollerTrack.MaxValue/50; ScrollerTrack.Count=count; var itemWidth=mWidth/count; for(var i=0;i<count;i++){ var span=$("<span>"+(i+1)*50+"</span>"); $(span).css("width",itemWidth+"px").css("margin-left",i*itemWidth+"px"); $(".value").append(span); } ScrollerTrack.Value(); }, Value:function(){ var currentValue; var isMoving=false; ScrollerTrack.CurrentX=$(".track").offset().left; $(".track").mousedown(function() { var target=$(this).parent(); isMoving=true; $("html,body").mousemove(function(event) { if(isMoving==false)return; var changeX = event.clientX - ScrollerTrack.CurrentX; currentValue = changeX - ScrollerTrack.CurrentX; if(changeX<=0){ $(target).find(".track").css("margin-left", "0px"); $(target).find(".valueC").css("width", "0px"); $(target).find(".show").css("margin-left", "-15px"); $(target).find(".show").html(0); ScrollerTrack.CurrentValue=0; } else if(changeX>=ScrollerTrack.BodyWidth-16){ $(target).find(".track").css("margin-left", ScrollerTrack.BodyWidth-16+"px"); $(target).find(".valueC").css("width",ScrollerTrack.BodyWidth-16+"px"); $(target).find(".show").css("margin-left", ScrollerTrack.BodyWidth-31+"px"); $(target).find(".show").html(ScrollerTrack.MaxValue); ScrollerTrack.CurrentValue=ScrollerTrack.MaxValue; } else{ $(target).find(".track").css("margin-left", changeX+"px"); $(target).find(".valueC").css("width", changeX+"px"); $(target).find(".show").css("margin-left", changeX-15+"px"); var v=ScrollerTrack.MaxValue*((changeX+16)/ScrollerTrack.BodyWidth); $(target).find(".show").html(parseInt(v)); ScrollerTrack.CurrentValue=parseInt(v); } }); }); $("html,body").mouseup(function() { isMoving=false; }); } } </script>
演示圖:
演示地址:http://demo.jb51.net/js/2015/jquery-txhk/
另外推薦一款范圍選擇器插件jRange,它是基于jQuery的一款簡單插件。下面我們來看下插件jRange的使用。
HTML
首先載入jQuery庫文件以及jRange相關(guān)的css文件:jquery.range.css和插件:jquery.range.js
<script src="jquery.js"></script> <link rel="stylesheet" href="jquery.range.css"> <script src="jquery.range.js"></script>
然后在需要展示滑塊選擇器的位置放入以下代碼:
<input type="hidden" class="slider-input" value="23" />
我們使用了hiiden類型的文本域,設(shè)置默認(rèn)值value,如23。
jQuery
調(diào)用jRange插件非常簡單,直接用下面的代碼:
$('.single-slider').jRange({ from: 0, to: 100, step: 1, scale: [0,25,50,75,100], format: '%s', width: 300, showLabels: true, showScale: true });
更多信息請(qǐng)參閱jRange項(xiàng)目官網(wǎng):https://github.com/nitinhayaran/jRange
相關(guān)文章
Jquery模仿Baidu、Google搜索時(shí)自動(dòng)補(bǔ)充搜索結(jié)果提示
昨天研究了一下Jquery 模仿Baidu、Google收索時(shí)自動(dòng)補(bǔ)充收索結(jié)果的提示,感覺效果還行,下面與大家分享下代碼2013-12-12jQuery實(shí)現(xiàn)倒計(jì)時(shí)重新發(fā)送短信驗(yàn)證碼功能示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)倒計(jì)時(shí)重新發(fā)送短信驗(yàn)證碼功能,結(jié)合實(shí)例形式分析了基于jQuery的倒計(jì)時(shí)操作功能實(shí)現(xiàn)方法,涉及jQuery表單提交、驗(yàn)證、正則操作等技巧,需要的朋友可以參考下2017-01-01jQuery實(shí)現(xiàn)頁面滾動(dòng)時(shí)層智能浮動(dòng)定位實(shí)例探討
在博客或者微博上面也會(huì)見到這個(gè)效果,所以客戶就也想要這樣的效果了,接下來為大家詳細(xì)介紹下浮動(dòng)定位實(shí)現(xiàn)的過程,感興趣的朋友可以參考下哈2013-03-03jQuery prototype沖突的2種解決方法(附demo示例下載)
這篇文章主要介紹了jQuery prototype沖突的2種解決方法,分析了針對(duì)jQuery中添加代碼與沖突位置添加代碼2種情況,并附帶demo示例供讀者下載參考,需要的朋友可以參考下2016-01-01內(nèi)容滑動(dòng)切換效果jquery.hwSlide.js插件封裝
這篇文章主要為大家詳細(xì)介紹了jQuery開發(fā)之內(nèi)容滑動(dòng)切換效果的相關(guān)資料,jquery.hwSlide.js插件進(jìn)行封裝具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-07-07jQuery仿360導(dǎo)航頁圖標(biāo)拖動(dòng)排序效果代碼分享
這篇文章主要為大家詳細(xì)介紹了360導(dǎo)航頁圖標(biāo)拖動(dòng)排序效果代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2015-08-08web開發(fā)人員學(xué)習(xí)jQuery的6大理由及jQuery的優(yōu)勢(shì)介紹
jQuery是一個(gè)用來簡化HTML客戶端開發(fā)的JS(JavaScrip)庫,它支持HTML DOM處理,同時(shí)還融合了部分HTML和CSS2013-01-01