摘要:在做公司移動端項(xiàng)目的時候,需要頻繁選擇日期和時間,在網(wǎng)上搜到的大部分插件都有存在,于是自己干脆寫了一個插件出來,以應(yīng)對公司項(xiàng)目的需求。
在做公司移動端項(xiàng)目的時候,需要頻繁選擇日期和時間,在網(wǎng)上搜到的大部分插件都有bug存在,于是自己干脆寫了一個插件出來,以應(yīng)對公司項(xiàng)目的需求。
下面把插件源碼放出來,供需要的小伙伴們復(fù)制粘貼(插件沒有bug,可以放心使用,喜歡的給個贊哦(o^*^o)!!!):
插件使用方法:HTML:
/* * pluginName:pickTimer, * author:yangyang2010cs@163.com * Individual contact method:986372959(It"s my QQ) * date:2017/09/07 18:45:00 * */ ;(function($,window,document,undefined){ "use strict"; //嚴(yán)格模式,提高效率 var pluginName = "pickTimer", //定義插件的名字 defaults = {},//定義一個默認(rèn)的參數(shù) liH,//每一個li的高度 $list,//滑動列表 globalThis_launchHtml, pluginThis;//指代指向plugin的this var global = { options:"" }; function Plugin(options){ //創(chuàng)建構(gòu)造函 //this -- Plugin對象 pluginThis = this; this.options = options; this.init(); //初始化 } Plugin.prototype = { init:function(){ //this -- Plugin對象 var str = ""+ ""; $("body").append(str); $(".pick-cancel,.pick-layer").on("click",function(){ $(".touches,.pick-layer").remove(); $("body").unbind("touchmove"); //恢復(fù)了body的拖動事件 }); $(".pick-sure").on("click",function(){ var val = ""; $(".pick-active").each(function(){ if(pluginThis.options.pickType=="y:m:d"){ val += $(this).text()+"-"; } else if(pluginThis.options.pickType=="h:m:s"){ val += $(this).text()+":"; } }); $(globalThis_launchHtml).html(val.substring(0,val.length-1)); $(".touches,.pick-layer").remove(); $("body").unbind("touchmove"); //恢復(fù)了body的拖動事件 }); $("body").on("touchmove",function (e){ e.preventDefault(); }); this.render(); //渲染 }, render:function(){ //this -- Plugin對象 global.options = this.options; $list = $(".list"); if(this.options.pickType=="h:m:s"){ for(var h=0;h<24;h++) { $list.eq(0).append("
.pick-container ul{ margin:0; padding:0; } .pick-container ul,.pick-container li{ list-style: none; } .pick-container a{ text-decoration: none; } /*materialize*/ .pick-container *{-webkit-tap-highlight-color:transparent;} .pick-container { position:fixed; z-index:99999999; left:0; bottom:0; width:100vw; background:#fff; margin: 0 auto; max-width: 1280px; } *, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; } .pick-m0 { margin: 0; } .row:after { content: ""; display: table; clear: both; } .row .col { float: left; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 .75rem; min-height: 1px; } .row .col.s3 { width: 25%; margin-left: auto; left: auto; right: auto; } .row .col.s4 { width: 33.33333333333%; margin-left: auto; left: auto; right: auto; } .row .col.s6 { width: 50%; margin-left: auto; left: auto; right: auto; } .center, .center-align { text-align: center; } /*layer*/ .pick-layer{ position: fixed; top:0; bottom:0; left:0; right:0; z-index:99999998; background:rgba(0,0,0,0.4); } /*pick-timer*/ .pick-timer{ overflow: hidden; position:relative; border-top:1px solid #eee; height:220px; } .pick-timer .list{ position:absolute; top:0; left:0; z-index:2; width:100%; transition:top .4s ease-out; } .pick-timer .list li{ height:44px; line-height:44px; text-align:center; color:#666; font-size:14px; transition:all .1s ease-out; } .pick-timer .list li.pick-active{ font-size:20px; color:#e02222; } .pick-timer .current{ position:absolute; top:88px; left:0; z-index:1; border-top:1px solid #e02222; border-bottom:1px solid #e02222; width:100%; height:44px; background:#fff; } /*pick-head*/ .pick-cancel{ display: block; font-size:14px; color:#666; height:40px; line-height:40px; } .pick-sure{ display: block; font-size:14px; color:#e02222; height:40px; line-height:40px; } .pick-title{ font-size:14px; color:#666; height:40px; line-height:40px; } /*current-time*/ .current-time:after{ content:":"; font-size: 14px; text-align: center; line-height: 44px; color: #666; position: absolute; top:-2px; right:0; } .current-date-right:after{ content:"."; color:transparent; width:5px; border-top:1px solid #999; position: absolute; top:20px; right:0; } .current-date-left:before{ content:"."; color:transparent; width:5px; border-top:1px solid #999; position: absolute; top:20px; left:0; } /**/ .pick-bgTop{ position:absolute; top:0; left:0; width:100%; height:88px; /*background: linear-gradient(#fff 0%, rgba(255, 255, 255, .85)45%, rgba(255, 255, 255, .6) 75%, rgba(255, 255, 255, .4) 100%);*/ background: -webkit-gradient(linear, left top, left bottom, from(#efefef),to(rgba(255, 255, 255, .1))); z-index:1; } .pick-bgBottom{ position:absolute; bottom:0; left:0; width:100%; height:87px; /*background: linear-gradient(rgba(255, 255, 255, .4) 0%, rgba(255, 255, 255, .6)25%, rgba(255, 255, 255, .85) 65%, #fff 100%);*/ background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, .1)),to(#efefef)); z-index:1; }特別注意:
,你也可以用其他的標(biāo)簽。由于在網(wǎng)上找到的插件都是用來觸發(fā)插件,但是使用input,在ios上會出現(xiàn)光標(biāo)和系統(tǒng)自帶的底部帶有‘完成’的確認(rèn)橫條,這樣很難看,雖然有辦法解決,但是麻煩。于是我在插件里沒有使用input的value屬性來獲取值,而是使用了除input元素外的其它任何標(biāo)簽,代碼原理中使用jquery中text()方法來寫值。在插件使用方法中就可以看出來,現(xiàn)在就回到頁面頂部看一看吧,我用的是
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/88426.html
摘要:好多編輯器例如等都支持這樣的語法來快速的編寫代碼如何優(yōu)雅地使用把標(biāo)簽放在結(jié)束標(biāo)簽之后結(jié)束標(biāo)簽之前的差別什么是響應(yīng)式設(shè)計(jì)怎樣進(jìn)行 書籍 《JavaScriptDOM編程藝術(shù)》《JavaScript高級程序設(shè)計(jì)》《JavaScript框架設(shè)計(jì)》《JavaScript專家編程》《JavaScript Ninjia》《JavaScript語言精粹(修訂版)》《JavaScript設(shè)計(jì)模式》《J...
摘要:好多編輯器例如等都支持這樣的語法來快速的編寫代碼如何優(yōu)雅地使用把標(biāo)簽放在結(jié)束標(biāo)簽之后結(jié)束標(biāo)簽之前的差別什么是響應(yīng)式設(shè)計(jì)怎樣進(jìn)行 書籍 《JavaScriptDOM編程藝術(shù)》《JavaScript高級程序設(shè)計(jì)》《JavaScript框架設(shè)計(jì)》《JavaScript專家編程》《JavaScript Ninjia》《JavaScript語言精粹(修訂版)》《JavaScript設(shè)計(jì)模式》《J...
摘要:好多編輯器例如等都支持這樣的語法來快速的編寫代碼如何優(yōu)雅地使用把標(biāo)簽放在結(jié)束標(biāo)簽之后結(jié)束標(biāo)簽之前的差別什么是響應(yīng)式設(shè)計(jì)怎樣進(jìn)行 書籍 《JavaScriptDOM編程藝術(shù)》《JavaScript高級程序設(shè)計(jì)》《JavaScript框架設(shè)計(jì)》《JavaScript專家編程》《JavaScript Ninjia》《JavaScript語言精粹(修訂版)》《JavaScript設(shè)計(jì)模式》《J...
摘要:在做公司移動端項(xiàng)目的時候,需要頻繁選擇日期和時間,在網(wǎng)上搜到的大部分插件都有存在,于是自己干脆寫了一個插件出來,以應(yīng)對公司項(xiàng)目的需求。 在做公司移動端項(xiàng)目的時候,需要頻繁選擇日期和時間,在網(wǎng)上搜到的大部分插件都有bug存在,于是自己干脆寫了一個插件出來,以應(yīng)對公司項(xiàng)目的需求。 下面把插件源碼放出來,供需要的小伙伴們復(fù)制粘貼(插件沒有bug,可以放心使用,喜歡的給個贊哦(o^*^o)!!...
閱讀 1599·2021-11-22 09:34
閱讀 1690·2019-08-29 16:36
閱讀 2668·2019-08-29 15:43
閱讀 3113·2019-08-29 13:57
閱讀 1298·2019-08-28 18:05
閱讀 1875·2019-08-26 18:26
閱讀 3243·2019-08-26 10:39
閱讀 3455·2019-08-23 18:40