2012年6月6日

jQuery when 使用方法


前言

幾乎現代的網頁都以ajax作為主要的設計方式,過去的form表單元素使用的機會越來越少,使用『非同步』ajax帶給我們許許多多的好處,例如傳送一個請求(request)到伺服器我們不需要像過去乖乖地等待回應(response),因為它會在背後執行,當它完成時會自己呼叫callback函數,這樣更帶來了更好的用戶體驗。

2012年6月3日

JavaScript 取得選取的文字、HTML

前言

剛剛在使用Chrome的字典插件突然看到一個簡單的功能,但卻又不知道怎麼實作,就是框選網頁並取得框選中的資料內容,就找了一些資料完成了這篇簡短的文章囉,廢話不多說,直接補上這段程式碼給大家參考。

監聽Iframe onload事件



前言

在Web2.0這個時代上,許許多多的網站應用都內嵌(iframe)了許多第三方的內容在自己的網站上,剛好最近專案上也在處理一些Iframe相關的問題就做了一些筆記,今天要解決的問題是如何偵測網頁上Iframe載入完成(onload)的事件,提出的解決方法有兩種,分別為jQuery方法與純javascript方法。

2012年5月31日

Single Page Application 實作 - 使用hash change event


前言

在上一篇文章『監聽 hash change 事件方法』中簡單的提到我們該如何監聽網址的Hash值改變,在本文章中我們將會利用這項技術,實際完成Single Page Application(SPA)的基本架構,有著這樣的架構,我們就能夠使用ajax的方式更新畫面,而不需要將整個畫面重新載入。

監聽 hash change 事件方法


前言

首先來說明為什麼要去監聽hash改變這個動機好了,現在有許多的應用都取向於單一頁面而不是過去的多個頁面,好處有很多,最明顯的好處就是只需要使用ajax的方式去改變要改變的區塊就好,不用整個page重新reload,最經典的例子就是gmail;如果要實作這樣的功能做常見的方式就是透過改變window.location.hash這個屬性來達成,瀏覽器hash屬性改變時並不會讓當前的頁面去reload,我們定義不同的hash位址定位不同的功能頁面,例如

www.itseer.com/#main : 首頁
www.itseer.com/#contact : 聯絡頁面
www.itseer.com/#author : 作者頁面

藉由監聽hash值得改變,動態的去載入或更換畫面需要update的部分。

方法一 : 使用javascript onhashchange事件

我們可以對window的onhashchange綁定事件,但是onhashchange事件在ie7 ie9雖然存在,但是這個事件卻不會被觸發,所以需要對ie瀏覽器使用不同的解法,這邊的提供解法是每100毫秒檢查一次hash是否有沒有改變,若改變就觸發要做的事情,這樣有點浪費效能的嫌疑。

CSS text-indent 與 word-spacing 介紹

簡介

本文章簡單的介紹CSS中的兩個在文章排版非常有用的屬性,分別為text-indent(縮進)、word-spacing(字距)。


text-indent

相信大家小時候或是現在都有寫過作文,而作文在文章的最前頭都必須要縮進二~四格空白,在網頁中,你可以使用text-indent來實作這個功能

2012年5月30日

跨域請求- JSONP 使用jQuery實作



甚麼是JSONP

The script tag method for cross-domain data fetching: JSON with Padding, or simply JSONP. - Bob Ippolito
JSONP也就是JSON with Padding,意思就是讓JSON資料添加了一些添加物(也就是function name),主要用來解決跨域資源存取的問題,用JSONP抓到的資料並不是JSON,而是一段javascript function並包含了JSON資料的程式碼,瀏覽器在取得後不是使用JSON解析器而使用JavaScript執譯器執行並得到結果。

跨域請求 (cross domain ajax)


簡介

本文章主要探討前端發出跨域(cross domain)的請求(request)的解法,瀏覽器基於安全性的原因,禁止javascript發出跨域的Request,在深入探討之前必須先解釋何謂跨域(cross domain)。

跨域

domain指的是網站的所在地址代稱,每個網站伺服器都會有一個IP,但這組地址實在不好記,因此DNS伺服器會幫助我們將一個容易記得的名稱(domain name)對應到我們伺服器的IP。跨域(cross domain)指的就是請求在其他的domain地址,而不是本身伺服器位置。例如www.a.com發出request至www.b.com這就是跨域的行為。

瀑布流(Waterfall)排版研究



如果你看過或用過Pinterest這個全球第三大的社交網站,那你一定對瀑布流(WaterFall)排版不陌生,使用這種參差不齊的排版方式來展現源源不絕的產品、圖片是一個非常棒的作法,為什麼呢?

如果你不了解Pinterest,可以參考Inside Harlequin的文章

好處一 : 最大面積的利用螢幕空間 
好處二 : 最大範圍的搜尋

2012年5月17日

養眼網站 | Fab - 創意產品社交交易平台

今晚在科技橘子上的這篇文章中發現了Fab這個社群創意作品交易網站,介面明亮顯眼,我大概在裡面探索了十多分鐘,發現它的使用者體驗做的也不賴,其中還包含了pinterest瀑布流呈現以及許多方便又時尚的介面。

我把一些重點截圖起來大家一起參考學習



















ShareThis