網頁

顯示具有 JS 標籤的文章。 顯示所有文章
顯示具有 JS 標籤的文章。 顯示所有文章

2015年9月23日 星期三

JSON 轉換小技巧

最近利用 FullCalendar 來架設開館時間的行事曆。不過在於資料提供的方面,想到要請同仁直接提供符合 JSON 格式的資料,對同仁來說可能會有些困擾。但如果要將 FullCalendar 改寫,將資料的來源取自資料庫,又覺得沒有必要這樣大費周章。另外撰寫一個轉換格式的程式也覺得沒必要。後來想到,其實也可以利用 phpmyadmin 。將同仁彙整的 CSV 檔案直接將匯入到資料庫(MySQL),再利用 phpmyadmin 資料匯出成符合 JSON 的格式(如圖)。按一按選一選,就可以很快得到符合需求的 JSON 格式資料。

  • 輸出成果:
[{"id":"1","title":"09:00-18:00","start":"2015-09-20","end":"2015"}, {"id":"2","title":"08:00-22:00","start":"2015-09-21","end":"2015"}, {"id":"3","title":"09:00-22:00","start":"2015-09-26","end":"2015"}]



2015年9月22日 星期二

JS Calendar

同仁提出一個想法。想要提供類似日本筑波大學圖書館的開閉館行事曆服務。

這套 FullCalendar 看來很不錯。資料的提供,再修改一下從資料庫取出,再轉成它可接受的格式後應該就可以套用。讚!

註記:

  • 事件用不同顏色標記的做法
    • 範例:
events: [
                {
                    title: '09:00-18:00',
                    start: '2015-09-20',
                    backgroundColor: '#E66F89'
                },
                {
                    title: '08:00-22:00',
                    start: '2015-09-21',
                    end: '2015-09-26',
                    backgroundColor: '#20D788'
                },
  • 定義星期六、日與星期一至星期五的底色
    • 範例 (在 CSS內調整):
<style>
    .fc-sat{
           background-color: #BBE7F2;
    }
    .fc-sun{
           background-color: #FC8D90;
    }
    .fc-mon{
           background-color: #CBF8A8;
    }
    .fc-tue{
           background-color: #CBF8A8;
    }
    .fc-wed{
           background-color: #CBF8A8;
    }
    .fc-thu{
           background-color: #CBF8A8;
    }
    .fc-fri{
           background-color: #CBF8A8;
    }
</style>
  • 介面中文化
    • 範例
    • 加入中文語言 js (<script src='../lang/zh-tw.js'></script>)
    • 指定預設語系: lang: 'zh-tw',

相關資料:

雛形:


2014年4月22日 星期二

Dashboard 溫度感測

前些天(103.04.18)開一個關於 dashboard 的會議,主要是要討論要將那些資料項目採用 Dashboard 的方式呈現。於會議中同仁提及到一個我覺得還蠻好玩的想法。

因為自從實施節能後,館內空調的溫度會設定於某一個固定的溫度。但是自從這樣做後,常常被學生反應某區太熱或太冷。當然溫度每個人的感受本來就很主觀,不過也許建置 Dashboard 溫度感測後,可以讓使用者了解所前往的區域目前的溫度,他可以有個資訊來參考,再決定要不要前往該區,也許能降低此方面的困擾。

稍微實做了一下。前端的頁面是利用 Google Chart 來產生溫度計的效果。至於後端的資料來源則仍需請廠商協助提供界接的方式。

相關資料:
 成品示意圖:

2014年4月1日 星期二

Timeline @ NTHU Library


Timeline 的呈現方式有很多種。也有許多不同的專案可供選擇。

現在要做介紹的 TimelineJS 這個就很棒。TimelineJS 中文資料不多。其實要應用它真的很容易,若將要呈現的資料選擇放在 Google Docs上,其實可以很快的將這個應用給迅速架設起來。實作的方式在它的網站上就說明了很清楚了,在這就不多做說明。

雖然可以選擇使用 KnightLab's CDN 的服務,但我的習慣還是將程式的原始碼放在自家的機器內,它的專案程式碼可以到 GitHub 下載。下載完成後,解壓縮後,在目錄內有相關的範例檔案,直接拿它的範例檔案來做修改即可。

相關資料:


2014年3月13日 星期四

滑鼠游標指定到網頁表單內的特定欄位(Javascript)

同仁在詢問我在使用訪客系統時,可否在開啟頁面的同時,將游標指定到借閱的欄位內?

做法還蠻簡單的,只要一行 javascript 即可。

在 <body> 標籤內加入指定的表單名稱內的欄位名稱後再使用 focus()即可。

<body onLoad="document.p_check.guest_id.focus()">

對照表單:
<form id="p_check" name="p_check" method="post" action="#">
<input type="text" name="guest_id" value="" ACCESSKEY="B" />
</form>

不想寫在<body>標籤內也可以改成這樣的寫法,如下:

<script>
  window.onload = function ()
  {
  document.p_check.guest_id.focus();
  }
</script>


2013年11月4日 星期一

簡體字轉正體中文

在實作 FB Like Button @ OPAC 時,它的簡介的部份是可以應用於圖書館館藏查詢系統,檢索到書目可以自動的帶有一般圖書的簡介,個人是覺得放這個一般書籍的簡介資料會比放傳統 MARC 格式資料來的吸引人。

不過因為所應用的豆瓣 API,它所提供的書目資料有些是簡體版的資料,有些是繁體版的資料,這部份也不知道同仁的想法。所以稍微找看看簡體轉繁體中文有沒有較好的解決方式。

由找到的資料來看,大致上的做法是維護一份轉換字碼對照表,透過代碼表的交換來達成目的。也有人是採用 Google Translate API的作法,但目前 google translate api有些限制,不能達到所要的需求。在找到的資料當中,以 新同文堂 for Web 的做法最為簡單,簡單的幾行javascript 加入後就可以逹到要的效果 DEMO


相關資料:
  1. 新同文堂 中文網頁繁簡轉換
  2. 新同文堂 for Web
  3. mediawiki-zhconverter
  4. 使用 Mediawiki zhconverter 進行 PHP 網頁簡繁互轉 
  5. php 在UTF8編碼下將繁體中文轉換成簡體中文 

DEMO
 

2013年1月15日 星期二

LyteBox 套件


Lytebox is a lightweight, cross-browser compatible and mobile friendly Javascript library and content viewer. It's easy to use, it's fast, it's compatible with other libraries, and best of all, it's COMPLETELY FREE.

不錯使用,目前我是用在臺灣聯合大學系統圖書代借代還服務頁面,自動的彈跳出要公告的內容。使用這個套件,完全不需變動原本頁面的 HTML 內容,只要加入短短的幾行 javascript script ,就完成了。其它詳細的使用方式可以直接參考官方上的參考文件,中文的教學也可以參考這篇 BLOG 的介紹。 

<script>
$lb.launch({
    url: 'images/2013UST.jpg',
    title: 'UST'
})
</script>
</head>



2012年9月25日 星期二

Timeline

Simile Widget Timeline - 用靜態網頁表現時間線

Timeline是採用時間軸示意的手法來表示所發生的事件。它可以用在那呢?

也許可以將它應用在,歷年來所舉辦的說明會課程展覽活動、大世紀等活動,應該是非常有趣的應用











試玩了一下,將它拿來當作自我介紹時的專案展現結果介紹也是不錯的。

2012年8月24日 星期五

Book Cover Slider Gallery

新版的網頁預計放新書展示的功能。

使用 Google 輸入 Jquery Slider Gallery or Sliding box 的關鍵字後,馬上就可以找到不少非常漂亮的 Plugin 可以立即套用。例如 jQuery教學-SliderGallery滑動式相本特效應用ElastislideCycle Plugin 的效果,就是這次我所需要的功能。

前端頁面的部份,我是採用 Elastislide Plugin 與 Cycle Plugin 來實作這次的功能。
Elastislide & Cycle 的使用方式,可以直接觀看官方網頁的文件,Elastislide Plugin 搞了比較久的地方在於,書本的封面要提供串連到館藏  WebPAC 的超連結的功能,這在官方的頁面並沒有提及如何實作點選超連結的做法,需要稍微改寫一下,腳本如下。

 <script type="text/javascript"> 
            $('#carousel').elastislide({
                imageW         : 80,
                minItems    : 1,
                border        : 0,
                onClick  :  function( $item ) {
                    window.location = $.myURL("index", $(this).attr("value"));
                }
            });
</script>


實作後的 DEMO 圖




2012年7月13日 星期五

JS

SyntaxHighlighter @ Google Blog

有時在文章內會貼上一些程式碼的原始碼,直接貼上 source code 在文章內,看起來不是很漂亮,此時可以使用 SyntaxHighlighter 套件,可以將這些需要的檔案放在自己的主機上,也可以選擇考慮放在 Google 協作平台內 (放 google 協作平台的作法)。

使用的方法,觀看 Blog及Google Blogger使用SyntaxHighlighter(高亮度語法)的方法Google Blogger 中使用 SyntaxHighlighter 3.0.83 ,這兩篇文章的說明就可以了解該如何實作。

目前我僅放 javascript and Php 兩種模式而已,有需要再新增即可。

SyntaxHighligher 目前支援的語言程式碼清單可見 Bundled Brushes 列表。
  • 使用方式:要呈現的原始碼之前加入<pre class="brush:js"> </pre> 標籤即可。
DEMO Script
 
line 1
line 2
line 3
line 4
line 5
line 6

Cookies

Javascript Cookies function

From : head first Javascript (ISBN:9789866840241)