作家
登录

基于jquery的时间段实现代码

作者: 来源:www.28hudong.com 2013-03-30 00:25:14 阅读 我要评论

json字符串: 复制代码 代码如下:var mcode={"minfo":[{"time":"9:00-10:00","status":2},{"time":"10:00-11:00","status":1},{"time":"11:00-12:00","status":3},{"time":"13:00-14:00","status":1},{"time":"14:00-15:00","status":1},{"time":"15:00-16:00","status":1},{"time":"16:00-17:00","status":1},{"time":"17:00-18:00","status":1}]}; 其中time代表时间段,status当职位1时代表可以使用,2时代表已过期,3时代表已选满。 通过循环遍历json字符串中的数据值。 复制代码 代码如下: for(var i in mcode.minfo){ mcode.minfo[i].time + mcode.minfo[i].status; } 当前时间段为已过期或以选满时,鼠标移动到其当前时间段上时提示相应信息,鼠标移开取消提示。 当前时间段为橘黄色代表可以选择。 复制代码 代码如下: $.each($("#test span"),function(k,v){ if($(this).hasClass("unspan1")||$(this).hasClass("unspan2")){ $(this).hover(function(){ $(this).find("label").css({"display":"block"}); $(this).find("em").css({"display":"block"}); }, function(){ $(this).find("label").css({"display":"none"}); $(this).find("em").css({"display":"none"}); }); } else{ $(this).click(function(){   $("#result").empty().html("您选择了:"+$(this).text()); }); } }); 拼接字符串,构建html结构。 复制代码 代码如下: for(var i in mcode.minfo){ if(mcode.minfo[i].status===2){ html+='<span class="unspan1 '; } else if(mcode.minfo[i].status===3){ html+='<span class="unspan2 '; } else{ html+='<span class=" '; } if((i+1)%3===0){ html+='" >'; } else{ html+='mspan" >'; } html+=mcode.minfo[i].time; if(mcode.minfo[i].status===2){ html+='<label>已过期</label>'; } else if(mcode.minfo[i].status===3){ html+='<label>已选满</label>'; } if(mcode.minfo[i].status!==1){ html+='<em></em>'; } html+="</span>"; } css样式: 复制代码 代码如下: #test{ width: 430px; padding: 35px; border: 1px solid #666666;overflow: hidden; margin: 100px auto 0px;} #test span{display:block; background: #FF6600; width:130px; height: 30px; line-height: 30px; text-align: center; float:left; _display:inline; position:relative; margin-bottom: 15px; cursor: pointer;} #test .mspan{margin-right: 20px;} #test .unspan1{background: #D2E0E6; cursor:default} #test .unspan2{background: #ffcaca; cursor: default;} #test label{position: absolute; left:25px; top:-18px; width: 60px; line-height: 20px; background: #F3F3F3; padding:1px 10px; border:1px solid #CCCCCC;display: none;} #test em{display: block;border-color: #F3F3F3 transparent transparent transparent;border-style: solid;border-width: 6px 6px 6px 6px; padding: 0;width: 0;height: 0; font-size: 0;line-height: 0; position: absolute;left:58px; top:5px;display:none; _border-top-color: #F3F3F3;_border-bottom-color: #F3F3F3; _filter: chroma( color = #F3F3F3); } #result{ margin: 10px auto 0px; text-align: center} 实例: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="http://demo.jb51.net/jslib/jquery/jquery.js"></script> <style type="text/css"> *{margin:0px;padding: 0px;} #test{ width: 430px; padding: 35px; border: 1px solid #666666;overflow: hidden; margin: 100px auto 0px;} #test span{display:block; background: #FF6600; width:130px; height: 30px; line-height: 30px; text-align: center; float:left; _display:inline; position:relative; margin-bottom: 15px; cursor: pointer;} #test .mspan{margin-right: 20px;} #test .unspan1{background: #D2E0E6; cursor:default} #test .unspan2{background: #ffcaca; cursor: default;} #test label{position: absolute; left:25px; top:-18px; width: 60px; line-height: 20px; background: #F3F3F3; padding:1px 10px; border:1px solid #CCCCCC;display: none;} #test em{display: block;border-color: #F3F3F3 transparent transparent transparent;border-style: solid;border-width: 6px 6px 6px 6px; padding: 0;width: 0;height: 0; font-size: 0;line-height: 0; position: absolute;left:58px; top:5px;display:none; _border-top-color: #F3F3F3;_border-bottom-color: #F3F3F3; _filter: chroma( color = #F3F3F3); } #result{ margin: 10px auto 0px; text-align: center} </style> </head> <body> <div id="test"> </div> <div id="result"></div> <script type="text/javascript"> var mcode = { "minfo": [ { "time": "9:00-10:00", "status": 2 }, { "time": "10:00-11:00", "status": 1 }, { "time": "11:00-12:00", "status": 3 }, { "time": "13:00-14:00", "status": 1 }, { "time": "14:00-15:00", "status": 1 }, { "time": "15:00-16:00", "status": 1 }, { "time": "16:00-17:00", "status": 1 }, { "time": "17:00-18:00", "status": 1 } ] }; var html = ''; for(var i in mcode.minfo){ if(mcode.minfo[i].status===2){ html+='<span class="unspan1 '; } else if(mcode.minfo[i].status===3){ html+='<span class="unspan2 '; } else{ html+='<span class=" '; } if((i+1)%3===0){ html+='" >'; } else{ html+='mspan" >'; } html+=mcode.minfo[i].time; if(mcode.minfo[i].status===2){ html+='<label>已过期</label>'; } else if(mcode.minfo[i].status===3){ html+='<label>已选满</label>'; } if(mcode.minfo[i].status!==1){ html+='<em></em>'; } html+="</span>"; } $("#test").empty().html(html); $.each($("#test span"),function(k,v){ if($(this).hasClass("unspan1")||$(this).hasClass("unspan2")){ $(this).hover(function(){ $(this).find("label").css({"display":"block"}); $(this).find("em").css({"display":"block"}); }, function(){ $(this).find("label").css({"display":"none"}); $(this).find("em").css({"display":"none"}); }); } else{ $(this).click(function(){ $("#result").empty().html("您选择了:"+$(this).text()); }); } }); </script> </body> </html>

  推荐阅读

  jquery 插件学习(六)

复制代码 代码如下: ;(function($){ $.extend($.fn,{ color : function(options){ var options = $.extend({},$.fn.color.defaults,options); return this.each(function(){ $(this).css("color",options.bcolor);>>>详细阅读


本文标题:基于jquery的时间段实现代码

地址:http://www.17bianji.com/kaifa2/JS/23208.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)