原创 判斷是否是IE瀏覽器,包括IE10,IE11

function isIE() { //ie? if (!!window.ActiveXObject || "ActiveXObject" in window) return true; else return fa

原创 angular內置事件

angular內置事件 $includeContentLoaded($emit事件) ngInclude內容重新加載的時候,從ngInclude指令觸發 $includeContentRequested($emit事件) 從調用n

原创 實現JavaScript中的5種主要的數據類型(包括Number、String、Object、Array、Boolean)進行值複製

Object.prototype.clone = function(){ var o = this.constructor === Array ? [] : {}; for(

原创 常用的gulp插件

HTML&CSS autoprefixer - parse CSS and add vendor prefixes to rules by Can I Use. gulp-browser-sync - keep multiple

原创 protobuf.js如何讀取二進制數據

How to read binary data in the browser or under node.js? When reading/writing binary data in the browser or under n

原创 How browsers work(瀏覽器工作原理)

How browsers work:http://taligarsiel.com/Projects/howbrowserswork1.htm 瀏覽器的渲染原理簡介 http://coolshell.cn/articles/

原创 Web前端代碼構建優化

前言 本次所做的構建針對於iVMS-5200 Professional 車載 1.0項目的前端工程。在現在化Web開發情況下,越來越注重用戶體驗,具體包括網站的訪問速度,頁面的自適應,頁面操作的流暢度。如何做到更快,對前端開發人

原创 JS中的new操作符

new操作時會執行的三個步驟 比如:var obj = new Base(); 實際結果: var obj = {}; obj.__proto__ = Base.prototype; Base.call(obj); 第一行,

原创 CSS的BFC

BFC 神奇背後的原理 BFC 已經是一個耳聽熟聞的詞語了,網上有許多關於 BFC 的文章,介紹瞭如何觸發 BFC 以及 BFC 的一些用處(如清浮動,防止 margin 重疊等)。雖然我知道如何利用 BFC 解決這些問題,但當別

原创 html 中 div不定寬度如何水平居中的解決方案

傳統的水平居中樣式 margin: 0 auto; 這個方法要求使用這個樣式的dom元素,必須同時定義寬度width. 如果dom元素內容是不固定的,那麼就無法定義寬度.所以這個地方就很難弄. 經過多次摸索終於找到解決方案. 經

原创 清除浮動的方法

清除浮動的方法 浮動元素脫離文檔流,不佔據空間。浮動元素碰到包含它的邊框或者浮動元素的邊框停留。 1.使用空標籤清除浮動。 這種方法是在所有浮動標籤後面添加一個空標籤 定義css clear:both. 弊端就是增加了無意義標籤。

原创 使用Benchmark.js和jsPerf分析代碼性能

前言 前端開發中,掌握好瀏覽器的特性進行有針對性的性能調優是一項基本工作,同時,比較不同代碼的執行速度也是一項關鍵的工作。 比如,當我們想比較RegExp的test方法和String對象的indexOf方法查找字符串誰的速度更快

原创 AngularJS開發前端表格組件

AngularJS開發前端表格組件 1. 前言 在開發車載項目新版本時,由於採用了新的扁平化視覺,所以以前的框架漸漸不適用。於是在以AngularJs爲基礎的前端工程上開發表格組件。實現各種需求,比如排序,改變寬度,分頁,刷

原创 當一個頁面中含有多個ng-app的時候

當一個頁面含有多個ng-app的時候,如果ng-app沒有定義名稱,那麼就可以自動加載,如果定義了名稱,那麼需要用angular.module加入,且後面的需要angular.bootstrap加載。 angular.boots

原创 JS解析二進制圖片

HTML代碼: <div id="forAppend" class="demo"></div> JS代碼: var eleAppend = document.getElementById("forAppend"); window.