DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> javascript實現的淘寶旅行通用日歷組件用法實例
javascript實現的淘寶旅行通用日歷組件用法實例
編輯:關於JavaScript     

本文實例講述了javascript實現的淘寶旅行通用日歷組件用法。分享給大家供大家參考。

在線演示:http://demo.jb51.net/js/2015/trip-calendar/demo.html

PS:下面的演示代碼,需要用到 trip-calendar.js與trip-calendar.css文件。打包下載地址

具體如下:

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="angtian">
<meta name="description" content="淘寶旅行通用日歷組件Demo1">
<meta name ="keywords" content="日歷, 日歷組件, 淘寶旅行日歷">
<title>淘寶旅行通用日歷組件Demo1</title>
<style>
body{padding:0;margin:0 10px;text-align:center;}
.title{padding:0;margin:10px 0;font:700 18px/1.5 \5fae\8f6f\96c5\9ed1;}
.title a{font:400 14px/1.5 Tahoma;margin-left:20px;}
.example{margin-top:10px;}
.example button{margin:0 5px 10px 0;}
.calendar{display:inline-block;}
</style> 
<script src="http://yui.yahooapis.com/3.5.1/build/yui/yui-min.js"></script>
<script>
var root = 'http://fgm.cc/learn/calendar/trip-calendar/';
YUI({
 modules: {
 'trip-calendar': {
 fullpath: root + 'trip-calendar.js',
 type : 'js',
 requires: ['trip-calendar-css']
 },
 'trip-calendar-css': {
 fullpath: root + 'trip-calendar.css',
 type : 'css'
 }
 }
}).use('trip-calendar', function(Y) {
 /**
 * 非彈出式日歷實例
 * 直接將日歷插入到頁面指定容器內
 */
 var oCal = new Y.TripCalendar({
 container : '#J_Calendar', //非彈出式日歷時指定的容器(必選)
 selectedDate: new Date //指定日歷選擇的日期
 });
 //日期點擊事件
 oCal.on('dateclick', function() {
 var selectedDate = this.get('selectedDate');
 alert(selectedDate + '\u3010' + this.getDateInfo(selectedDate) + '\u3011');
 });
 Y.one('#J_Example').delegate('click', function(e) {
 var oTarget = e.currentTarget;
 value = oTarget.getAttribute('data-value');
 switch(true) {
 //日歷個數
 case oTarget.hasClass('J_Count'):
 this.set('count', value).render();
 break;
 //顯示節假日
 case oTarget.hasClass('J_showHoliday'):
 this.set('isHoliday', true).render();
 break;
 //隱藏節假日
 case oTarget.hasClass('J_hideHoliday'):
 this.set('isHoliday', false).render();
 break;
 //時間范圍限定
 case oTarget.hasClass('J_Limit'):
 this.set('minDate', new Date)
  .set('maxDate', '')
  .set('afterDays', value)
  .set('date', new Date());
 break;
 //指定初始日期
 case oTarget.hasClass('J_InitDate'):
 this.set('minDate', value)
  .set('maxDate', '2012-12-21')
  .set('date', value);
 break;
 //下拉表單選擇時間
 case oTarget.hasClass('J_Select'):
 this.set('isSelect', true).render();
 Y.all('.J_Count').slice(1).set('disabled', true);
 break;
 //取消下拉表單選擇
 case oTarget.hasClass('J_SelectOff'):
 this.set('isSelect', false).render();
 Y.all('.J_Count').slice(1).set('disabled', false);
 break;
 }
 }, 'button', oCal);
});
</script>
</head>
<body>
<h1 class="title">淘寶旅行通用日歷組件Demo1 <a href="http://fgm.cc/learn/calendar/trip-calendar/Demo1.html">Demo1</a><a href="http://fgm.cc/learn/calendar/trip-calendar/Demo2.html">Demo2</a><a href="http://fgm.cc/learn/calendar/trip-calendar/Demo3.html">Demo3</a><a href="http://fgm.cc/learn/calendar/trip-calendar/api.html" target="_blank">API文檔</a></h1>
<div id="J_Example" class="example">
 <button class="J_Count" data-value="1">單日歷</button>
 <button class="J_Count" data-value="2">雙日歷</button>
 <button class="J_Count" data-value="3">三日歷</button>
 <button class="J_Count" data-value="4">四日歷</button>
 <br />
 <button class="J_showHoliday">顯示節假日</button>
 <button class="J_hideHoliday">隱藏節假日</button>
 <br />
 <button class="J_Limit" data-value="90">限定范圍(今天->90天)</button>
 <button class="J_InitDate" data-value="2012-10-01">指定初始日期(2012年10月)</button>
 <button class="J_InitDate" data-value="">取消范圍限定</button>
 <br />
 <button class="J_Select">下拉表單選擇時間</button>
 <button class="J_SelectOff">取消下拉表單選擇</button>
</div>
<div id="J_Calendar" class="calendar"></div>
</body>
</html>

希望本文所述對大家的javascript程序設計有所幫助。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved