jQuery 1.7 透過 on 來綁定事件

既上一篇作者寫了 Javascript 前端工具 Backbone.js Framework 初學介紹,這次來將程式改寫成 jQuery 寫法,藉這個機會來介紹 jQuery 新功能 on API,底下來看看 jQuery event handle 的演進

//在 jQuery 1.3 以上版本
$(selector).live(events, data, handler);
//在 jQuery 1.4.3 以上版本 
$(document).delegate(selector, events, data, handler);
//在 jQuery 1.7 以上版本
$(document).on(events, selector, data, handler);
上面三種寫法都可以綁定網頁上全部元件,如果只是單純只是用 click bind event 的話,那只要新增的元件就無法作用,講得有點抽象,底下直接看個例子: [Read More]

Javascript 前端工具 Backbone.js Framework 初學介紹

backbone
我相信大家對於後端程式

PHP, Ruby, Python .. 等語言都已經相當熟悉,進階開發者也都接觸了好用的後端 Framework 如 CodeIgniter, CakePHP, Django, Ruby on Rail, Yii, Symfony .. 等,用 Framework 最大的好處並不是在 Framework 提供了大量工具,而是制定了 MVC 架構,讓專案多位開發者可以遵循,上了講了這麼多後端 MVC Framework,那麼前端呢?接下來介紹前端強大工具: Backbone.js

什麼是 Backbone.js 簡單來說 Backbone.js 就是一套前端 Javascript Framework,它提供 MVC 架構,相信大家都玩過後端 MVC,那至於前端呢,好像比較少人提到,這就是介紹 Backbone.js 最主要的目的。Backbone.js 包含了 Model View Controller 來讓使者操作,Model 提供了key-value 結構,以及可以 binding 大量 event,開發者可以透過 RESTful JSON interface 來跟 Backbone.js 的 Model 及 Collection 搭配。如果想瞭解 Backbone.js 線上文件可以參考

GitHub 網站,如果想瞭解程式碼可以參考 source code 註解

[Read More]

jQuery stopPropagation 和 stopImmediatePropagation 比較

近期在幫公司導入 Backbone.js 技術,把後台全面改寫成 Javascript MVC 架構,技術包含 jQuery + Backbone.js + Underscore.js + Mustache Template,這些技術我想可以寫另外一篇 Backbone.js 初體驗,這邊就先不多說了,在 Backbone.js 的 View 架構裡,可以任意 bind events,程式碼如下: RT.View = Backbone.View.extend({ initialize: function() { if (this.model) { this.model.bind("change", this.render, this); } if (this.collection) { this.collection.bind("all", this.render, this); } }, events: { 'click .add': 'add', 'click .edit': 'edit', 'click .delete': 'delete_item', 'click .delete_all': 'delete_all' }, add: function(e) { }, )}; 上面程式碼可以看到,將 click 事件綁在不同 Class 上,但是問題來了,如果同時 new 兩個 RT. [Read More]

Google App Engine 收費機制 Frontend Instance Hours

最近把一個簡易的 Web 丟到

Google App Engine 測試,但是發現每天都會因為 Frontend Instance Hours 不夠用,而造成網站被關閉 (Quota 爆漿),上網找一下解決方法,發現了這篇: Frontend Instance Hours 的問題,只要透過底下方式就可以暫時解決這問題,如果是網站流量很大的話,那可能要考慮開啟付費機制。

解決方式 先進入

App engine 後台,點選您的 Application 之後可以看到左邊選單 Application Settings,進入後找到 Max Idle Instances 還有 Min Pending Latency 這兩項設定,我們必須將 Max Idle Instances 設定為**1**,以及 Min Pending Latency 設定為 15s,但是 Max Idle Instances 預設是不給修改,而是跑 default value “Automatic”,這時候,我們必須把 inbound_services 設定為 warmup 才可以動態調整 Max Idle Instances

設定 inbound_services 請打開網站根目錄底下的

app.yaml,在上面加入

inbound_services:
- warmup
之後將設定上傳後,回到剛剛

Application Settings 將兩個數值調整為上面描述的設定,這樣就可以不用被 Google 收費了,想省錢的朋友們,可以儘快設定。

phpfog 免費提供升級 Silver 一個月

phpFog 最近放出一個消息 Get $29 account credit by just deploying a new App!,內文大意就是說,只要您註冊網站成功,並且新開 application,系統就會在帳戶增加 $29 美元,您隨時可以升級到 Silver Cloud,重點是免費的啦,如果大家想玩看看,就趕快去註冊吧,開放時間是 8 AM PST on 6 March 2012 and runs until 8 AM PST on 9 March 2012.,不確定時間是不是過了 XD,如果已經有帳號的,可以直接到 Live Chat 直接請他們把 Credit 加上去就好。 phpfog 搭配當紅 git 來當作下載及上傳程式碼,跟過去都是用 FTP 方式來運作有很大的不同,所以用此平台之前,請先學會基本 git version control,網站提供了很多 PHP Framework 或 Application,例如 CodeIgniterCakePHPFuelPHPLaravel…等,不管選擇哪一個 Framework,都可以隨時修改,系統只是預設把 Source Code 抓下來放到 Application 裡面,所以可以任意刪除。

如何善用 CodeIgniter Library 及擴充核心 extend core class

CodeIgniter
上禮拜介紹了

CodeIgniter MVC 基礎介紹,這次來分享如何善用 CodeIgniter 內建的 Library,以及該如何擴充核心功能,投影片內容會比上禮拜深入些,不過不會很難,只要對於物件導向有一定的基礎,我相信都可以把整個 CodeIgniter 架構瞭解的很清楚。

此投影片會介紹4個部份
  • 如何善用使用 CodeIgniter 內建函式庫
  • 移植及撰寫個人 Library
  • 擴充核心程式碼
  • GetSparks 簡介

CodeIgniter MVC 基礎介紹

CodeIgniter

上禮拜六講了一場 CodeIgniter 簡介,裡面很清楚交代一般新手入門所需要的基礎,以及什麼是 MVC(Model,View,Controller),如何將原本的網站轉移到 CodeIgniter Framework。不多說了,大家可以參考投影片資料。投影片看完,也把作業寫好,恭喜你已經學會了CodeIgniter PHP Framework。

閱讀時可以搭配 CodeIgniter 使用手冊版本 2.1.0

新人 Git 版本控制教學

昨日去台北簡報如何快速學習 git,投影片主要是給新手 git 基礎介紹,如何使用 branch model,git submodule 及 tag。內容不會很難,適合之前就玩過任何一套 version control 的使用者來閱讀,如果有 svn 基礎,學習會比較輕鬆。簡報搭配 github 內容來教學。

投影片內容參考 Git Pro book 這網站教學,大家可以直接看原文說明,會更清楚 Git 使用。

Web Developer Tools in FireFox 10

在美國時間 2012/01/31 FireFox 發佈 10.0 版本,大家可以參考 Release Note,其實對於網頁程式設計師最大的福音就是 Firefox 內建 Web Develop Tool,以後不必在安裝 FireBug Addon,就可以任意查詢網頁 Element 功能,大家可以參考底下 Mozilla 所製作的影片以及快速瀏覽 CSS properties。 不多說了看完影片直接打開 FireFox,按下快捷鍵 Ctrl+Shift+I 就可以開始嘗試 Firfox 內建 Web Develop Tool。 Ref: Firefox 10 tooling closes in on Firebug Firefox Adds Powerful New Developer Tools