原创 Visual Studio 中創建 Sliverlight 8.1 App

爲 Visual Studio 2013 安裝 update 1 後,就可以創建 App 由於 Windows 和 Windows Phone 共享一個開發平臺,Visual Studio 2013 提供了一種 universal app

原创 JavaScript 通用函數整理——添加/刪除事件處理程序

參考《JavaScript 高級程序設計(第3版)》 《JavaScript DOM 編程藝術(第2版)》 實現平穩退化和漸進增強,就必須分離結構層、表示層、行爲層。 定義跨瀏覽器的 EventUtil 對象: 2014/3/25

原创 JavaScript DOM 基礎知識點

《JavaScript DOM 編程藝術 》 《JavaScript 高級程序設計》 平穩退化和漸進增強 在 JavaScript DOM 編程藝術一書中,個人認爲,最核心的思想是作者提到的平穩退化和漸進增強。 所謂的平穩退化,就是讓J

原创 JavaScript 通用函數整理——事件對象

參考《JavaScript 高級程序設計(第3版)》 《JavaScript DOM 編程藝術(第2版)》 實現平穩退化和漸進增強,就必須分離結構層、表示層、行爲層。 定義跨瀏覽器的 EventUtil 對象: var

原创 Silverlight 8.1 關鍵變化

對比 Windows Phone 8 apps ,Sliverlight 8.1 apps 的主要變化有以下幾點: 1、異常處理 將 app 升級到 Sliverlight 8.1 後可能會出現運行時錯誤。部分 API 可能會拋出潛在的錯

原创 JavaScript 繼承

參考《JavaScript 高級程序設計(第3版)》 在 JavaScript 中實現繼承,有兩種基本方法,一種是使用原型鏈,令子類的原型是父類的一個對象;另一種是借用構造方法,在子類的構造方法中使用call方法或apply方法調用父類

原创 創建 JavaScript 對象

參考《JavaScript 高級程序設計(第3版)》  一、工廠模式 採用廣爲人知的工廠模式,抽象了創建具體對象的過程,定義函數來創建對象。 說的簡單點,就是定義一個可以返回一個對象的函數,然後將對象的屬性方法封裝在函數中。 funct

原创 JavaScript 中的執行環境、作用域(scope)以及變量提升(hoisting)

先看下面一段代碼: var a = 0; alert("1st alert : a = " + a); function fun(){ alert("2nd alert : a = " + a); var a = 1;

原创 CSS 優先級和特指度

1、ID 選擇符 > 類選擇符 > 元素選擇符,特指度高的優先級高 2、行內樣式 > 內嵌樣式 > 鏈接樣式 3、設定的樣式 > 繼承的樣式 特指度的計算: 特指度可以用一個公式 I-C-E 來計算,其中 I 是 ID C 是 Clas

原创 阿里巴巴Web前端面試的一道JS題目,求解答!!!

題目大概是這樣的: function outer(){ return inner; var inner = "a"; function inner(){}; inner = 9; } alert(type

原创 CSS中常見的BUG調試

1、佈局——layout 佈局是windows提出的概念,用於控制元素的尺寸和定位。擁有佈局的元素負責自身及其子元素的尺寸及定位,而沒有佈局的元素只能依靠最近的祖先元素進行控制。 通常在IE6中出現的BUG,很可能是因爲佈局的緣故而產生的

原创 Web 前端性能優化——把 JavaScript 中的對象存儲在變量中

1、爲對象屬性建立變量快捷方式 將對象屬性賦值給變量,在使用對象屬性的時候,用變量代替,有很多好處: 1)減少對象的搜索鏈 2)變量名比屬性可讀性更好 3)壓縮代碼 //以前的寫法 document.body.addEventListe

原创 CSS 注意點

1、行內元素之間水平的 margin 取總和;塊級元素之間豎直的 margin 取大者,也就是發生“塌陷”(當元素浮動的時候,不會發生塌陷);子元素的 margin 會作爲父元素的內容,超過時會發生溢出,但在 IE 低版本中會自動擴大父元

原创 Web前端性能優化——CSS優化

1、避免使用 @import @import 最常見的用法是把所有的 CSS 文件通過 @import 鏈接到一個 CSS 文件中,如 main.css 這樣往往會導致嵌套的發生,就是被 import 的文件也通過 @import 鏈接其

原创 Web 前端性能優化——使用索引對象

利用 AJAX 和 JSON 可以接收一個對象數組,然後在數組中根據給定的值搜索對象: //根據用戶名獲得用戶 function getUser(name){ var searchResult = ajaxResult.user