Time of Update: 2017-01-19
為了讓函數只在頁面載入完畢後才得到執行,我們會把函數綁定到onload事件上:window.onload = userFunction但如果有兩個函數:firstFunction() 和 secondFunction(),都想讓它們在頁面載入完畢後得到執行,該怎麼辦?如果這樣:window.onload = firstFunciton;window.onload = secondFunction;只有最後一個函數能被執行。由此可得:每個事件處理函數只能綁定一條指令。但我們可以這樣做:
Time of Update: 2017-01-19
複製代碼 代碼如下:<strong>資料來源:</strong> <ul> <li>雲棲社區</li> <ul> <li>a_1</li> <li>a_2</li> <li>a_3</li> </ul> <li>www.jb51.net</li>
Time of Update: 2017-01-19
Iframe學習 [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行]
Time of Update: 2017-01-19
這裡的拖拉縮放比一般的選框複雜一點,能設定八個方位(方向)的固定觸發點,能設定最小範圍,最大範圍和比例縮放。 跟拖放效果一樣,程式的原型也是在做圖片切割效果的時候做出來的。但這個效果的參考少的多,基本上靠自己摸索,走了不少彎路,現在總算把自己想要的效果做出來了,程式跟上一個版本比較也已經“面目全非”,還是覺得有很多需要改進的地方,就像永遠沒有最完美的土耳其地毯。 這裡也有一個簡化版的SimpleResize,方便學習。 線上測試
Time of Update: 2017-01-19
//判斷索引值 //Javascript Document. 請按任意一個鍵。。。。 [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行] 例:斷行符號換Tab 複製代碼 代碼如下:<script type="text/javascript"> document.onkeydown=function enterToTab() { if(event.srcElement.type != 'submit' &&
Time of Update: 2017-01-19
方法一、setAttribute var obj = document.getElementById("obj"); obj.setAttribute("onclick", "javascript:alert('測試');"); 這裡利用 setAttribute 指定 onclick 屬性,簡單,很好理解, 但是:IE 不支援,IE 並不是不支援 setAttribute 這個函數,而是不支援用 setAttribute 設定某些屬性,包括對象屬性、集合屬性、事件屬性,也就是說用
Time of Update: 2017-01-19
JavaScript中建立函數主要有兩種方法:函式宣告和函數運算式。這兩種方式都有不同的適用情境。這篇筆記主要關注的是函數運算式的幾大特點以及它的使用情境,下面一一描述。主要特點•可選的函數名稱函數名稱是函式宣告的必需組成部分,這個函數名稱相當於一個變數,新定義的函數會複製給這個變數,以後函數的調用都需要通過這個變數進行。而對於函數運算式來說,函數的名稱是可選的,例如下面的例子:var sub = function(a1,a2){ return a1-a2; }
Time of Update: 2017-01-19
覆蓋原型//囚犯樣本 //1.定義原型對象 var proto = { sentence : 4, //監禁年限 probation: 2 //緩刑年限 }; //2.定義原型對象的建構函式 var Prisoner = function(name, id) { this.name = name; this.id = id; }; //3.將建構函式關聯到原型 Prisoner.prototype = proto; //4.執行個體化對象——採用工廠函數執行個體化對象 var
Time of Update: 2017-01-19
主要是方便你調式javascript用的。你可以看到你在頁面中輸出的內容。相比alert他的優點是:1.他能看到結構話的東西,如果是alert,淡出一個對象就是[object object],但是console能看到對象的內容。2.console不會打斷你頁面的操作,如果用alert彈出來內容,那麼頁面就死了,但是console輸出內容後你頁面還可以正常操作。3.onsole裡面的內容非常豐富,你可以在控制台輸入:console,然後就可看到:Console {memory:
Time of Update: 2017-01-19
1、功能講解: innerHTML 設定或擷取位於對象起始和結束標籤內的 HTML outerHTML 設定或擷取對象及其內容的 HTML 形式 innerText 設定或擷取位於對象起始和結束標籤內的文本 outerText 設定(包括標籤)或擷取(不包括標籤)對象的文本 2、樣本 <html> <head> <title>Demo</title> <style><!-- body
Time of Update: 2017-01-19
法寶就是Concurrent.Thread這個傢伙,其實是一個js庫,你可以從網站下載原始碼.如何使用呢? 很簡單 Concurrent.Thread.create(f, a1, a2, ...) f為你要調用的函數,a1,a2為該函數的參數,這樣建立了一個線程,你可以同時建立多個,他們會同時去執行,這個庫同時提供 了很多的方法,類似其它語言裡的Thread使用方法,如Concurrent.Thread.stop();等。具體去網站去瞭解。複製代碼 代碼如下:<html>
Time of Update: 2017-01-19
書中附帶的測試代碼如下 複製代碼 代碼如下:<html> <head> <title>Example</title> </head> <body> <p><strong>Note:</strong> The latest versions of Firefox seem to have fixed the string concatenation problem. If you
Time of Update: 2017-01-19
複製代碼 代碼如下: $("#div").bindTemplate({ source : json object, template : null | $("#template") | "<div>{{object}}</div>", dateFormat : "d.m.y", tagOpen : "{{", tagClose : "}}" }); bindTemplate(data) : 綁定資料對象到模板的操作方法 source : json 格式的資料來源
Time of Update: 2017-01-19
在JavaScript中,瀏覽器特別是移動端的瀏覽器分配的記憶體很有限,如何節省記憶體就成了一件非常有意義的事情。節省記憶體的一個有效方法是減少對象的數量。 享元模式(Flyweight),運行共用技術有效地支援大量細粒度的對象,避免大量擁有相同內容的小類的開銷(如耗費記憶體),使大家共用一個類(元類)。 享元模式可以避免大量非常相似類的開銷,在程式設計中,有時需要生產大量細粒度的類執行個體來表示資料,如果能發現這些執行個體除了幾個參數以外,開銷基本相同的話,就可以大幅度較少
Time of Update: 2017-01-19
中介者模式的作用就是解除對象與對象之間的緊耦合關係,它也稱‘調停者'。所有的對象都通過中介者對象來通訊,而不是相互引用,所以當一個對象發生改變時,只需要通知中介者即可。 如:機場的指揮塔,每架飛機都只需要和指揮塔通訊即可,指揮塔知道每架飛機的飛行狀況,可以安排所有起降時間,調整航線等 中介者模式符合迪米特法則,即最少知識原則,指一個對象應該儘可能少地瞭解另外的對象。如果對象之間的耦合性太高,則改變一個對象,會牽動很多個物件,難於維護。當對象耦合很緊時,要修改一個對象而不影響其
Time of Update: 2017-01-19
在物件導向設計中,有一個單一職責原則,指就一個類(對象、函數)而言,應該僅有一個引起它變化的原因。如果一個對象承擔了過多的職責,就意味著它將變得巨大,引起它變化的原因就多,它把這些職責耦合到了一起,這種耦合會導致程式難於維護和重構。 這時候,我們可以把該對象(本體)的其中一部分職責分離出來給一些第三方對象去做,本體只管自己的一些核心職責,這些第三方對象就稱作代理。代理對象可以作為對象(也叫“真正的主體”)的保護者,讓真正的主體對象做盡量少的工作。在代理設計模式中,一個對象充當了另一個對
Time of Update: 2017-01-19
定義:保證一個對象(類)僅有一個執行個體,並提供一個訪問它的全域訪問點;實現原理:利用閉包來保持對一個局部變數的引用,這個變數儲存著首次建立的唯一的執行個體; 主要用於:全域緩衝、登入浮窗等只需要唯一一個執行個體的時候; 一. 為一個非單例模式對象(如:Demo)實現單例模式的方法: 給Demo添加一個靜態方法來實現單例: Demo.getSingle = (function(){ var demo = null; return function(name){
Time of Update: 2017-01-19
JS 的 ES6版本已經被各大瀏覽器廣泛支援,很多前端架構也已經使用 ES6,並且還有 Babel 可以做相容處理,所以ES6已經進入了應用階段如果您對 ES6 還不太熟悉,下面4個簡單的基礎用法可以協助您快速瞭解ES61.使用 let 和 const 聲明變數在傳統的 ES5 代碼中,變數的聲明有兩個主要問題(1)缺少塊兒範圍的支援(2)不能聲明常量ES6中,這兩個問題被解決了,增加了兩個新的關鍵字:let 和 const塊兒範圍使用 letvar a = 1;if (true) {
Time of Update: 2017-01-19
一、首先定義一個JavaScript function,如下:function puckerMenu(level) {var levelLength = ('row' + level).length;var toDo = '0';for (var iCount = 0 ; iCount < document.all.length; iCount++){if ( document.all[iCount].id.indexOf('row' + level) > -1 && (
Time of Update: 2017-01-19
html檔案: 複製代碼 代碼如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head>