Time of Update: 2017-01-19
複製代碼 代碼如下:var str = new Array(); str[0] = '<li id="domain-{0}">'.replace('{0}', 'domainid'); str[1] = 'domainname'; str[2] = '<input type="hidden" name="domainids" value="{0}">'.replace('{0}', 'domainid'); str[3] = '</li>';
Time of Update: 2017-01-19
原文地址:http://www.davidflanagan.com/2009/08/string-multipli.html原作者:David Flanagan在Ruby中,“*”操作符用一個字串作為左邊參數,一個數字作為右邊參數,來實現字串重複。例如,"Ruby" * 2 的值為 "RubyRuby"。這僅在少數地方有用(例如,產生一張由連字號等ASCII 碼字元構成的表格),但是非常簡潔。而且好過寫一個迴圈來串連n次字串——這樣顯得很沒效率。
Time of Update: 2017-01-19
在我 上一篇文章 (譯文 ) 中,談到了各個瀏覽器究竟會在什麼情況下彈出指令碼失控提示,對於Internet Explorer 來說,當瀏覽器執行了數量過多的語句時就會停止執行指令碼,而其他的瀏覽器,則是持續執行指令碼超過一定時間的時候就會給出提示。而我們要探討的核心問題,不是這些瀏覽器如果探測失控的指令碼,而是我們如何才可以讓指令碼啟動並執行更快一些,從而避免這些警告 。 指令碼失控基本上有以下四個方面的原因: 在迴圈中執行了太多的操作。 臃腫的函數體 過多的遞迴 過多的 DOM 調用
Time of Update: 2017-01-19
這篇著重講第一個原因。最後給出了一個開發模式,替換傳統的迴圈結構,可以完全避免指令碼失控的狀況發生。原文標題:Speed up your JavaScript, Part 1 原文作者:Nicholas C. Zakas 在我 上一篇文章 (譯文 ) 中,談到了各個瀏覽器究竟會在什麼情況下彈出指令碼失控提示,對於Internet Explorer
Time of Update: 2017-01-19
1、concat方法 [作用] 將多個數組聯合起來,這個方法不會改變現存的數組,它只返回了所結合數組的一份拷貝。 [文法] arrayObj.concat(array1,array2,...) [執行個體] [Ctrl+A 全選 注:如需引入外部Js需重新整理才能執行] 2、join方法, [作用] 將原有數組對象轉換成1個字串,可以用指定分隔字元進行串聯。 [文法] arrayObj.join(separator),separator為分隔字元,預設為“,”。 [執行個體] [
Time of Update: 2017-01-19
1、背景 Javascript中的回呼函數,相信大家都不陌生,最明顯的例子是做Ajax請求時,提供的回呼函數, 實際上DOM節點的事件處理方法(onclick,ondblclick等)也是回呼函數。 在使用DWR的時候,回呼函數可以作為第一個或者最後一個參數出現,如: JScript code function callBack(result){ } myDwrService.doSomething(param1,param2,callBack);//DWR的推薦方式 //或者
Time of Update: 2017-01-19
如下的用法需要在JSP中增加屬性onclick. 以全選為例,onclick="javascript:allselect()"//javascript可以省略 或者將function allselect()用document.getElementById("allselectbox").onclick = function(); 全選: fuction allselect(){ var form = document.forms[0]; var state =
Time of Update: 2017-01-19
調用時可以這樣: 1,tempStr=GetNewSelectStr(dataTable.value,"select"+rowIndex,true); 2,makeSelectBox("select"+rowIndex,tempStr,value,obj); tempStr-這個是返回的下拉式清單值的框體 dataTable.value-這個是資料來源(我這裡是一張表)
Time of Update: 2017-01-19
其實這段代碼在之前的 “ 用 Javascript 實現錨點(Anchor)間平滑跳轉” 一文已經介紹過了,但是由於這個需求並且經常用到,因此,本站專門發布此文介紹,方便查閱。 複製代碼 代碼如下:<script type="text/javascript"> // 說明:用 Javascript 擷取捲軸位置等資訊 // 來源 :ThickBox 2.1 function getScroll() { var t, l, w, h; if
Time of Update: 2017-01-19
錨點(Anchor)相信很多人都不陌生,它方便訪問者在頁面的不同位置快速跳轉,直接找到自己感興趣的內容,如果說 RSS 是整個網站的摘要,那錨點就是一個頁面的摘要,通常一個頁面內容很多的時候,都會用錨點來定位。 但是錨點也有個問題,通常點擊錨點後,頁面會立即跳到目標位置,而本文介紹的方法,實現了錨點(Anchor)間平滑跳轉,效果非常不錯。複製代碼 代碼如下:<script type="text/javascript"> // 說明 :用 Javascript
Time of Update: 2017-01-19
當然考慮到瀏覽器(特別指IE)糟糕的js執行能力,動畫效果又要受到影響。 瀏覽器中的動畫效果主要依靠js來動態改變Dom元素外觀來形成。不過據說css正在修鍊這方面的能力哦。(拭目以待^_^) 我們需要周期性的改變dom元素的外觀,這個周期性就要依靠setTimeout()和setInterval()來完成。 它們2個哪一個更好點呢 見這裡 (是jquery的作者寫的一個文章) 我個人比較偏向setInterval,setTimeout需要用遞迴調用而且線上程很忙的情況下會延時,這會影響流暢性。
Time of Update: 2017-01-19
(10)addEvent 網上最流行的版本是Scott Andrew的,據說javascript界曾舉行一場比賽(此事件我們可以在Pro Javascript Techniques第100頁看到)或瀏覽PPK的網站,徵求添加事件與移除事件的函數,他就是其獲獎者。下面就是他的實現: 複製代碼 代碼如下: function addEvent(elm, evType, fn, useCapture) { if (elm.addEventListener) { elm.addEventListener(
Time of Update: 2017-01-19
複製代碼 代碼如下:<div onmouseover="alert('hello');" onmouseout="alert('out_div');" > <span onmouseover="alert('world');" onmouseout="alert('out_span');" >你好</span> </div>
Time of Update: 2017-01-19
複製代碼 代碼如下:<script type="text/javascript"> //CharMode函數 //測試某個字元是屬於哪一類. function CharMode(iN){ if (iN>=48 && iN <=57) //數字 return 1; if (iN>=65 && iN <=90) //大寫字母 return 2; if (iN>=97 && iN <=122) //小寫 return 4; else return 8;
Time of Update: 2017-01-19
前面的話錯誤處理對於web應用程式開發至關重要,不能提前預測到可能發生的錯誤,不能提前採取恢複策略,可能導致較差的使用者體驗。由於任何javascript錯誤都可能導致網頁無法使用,因此作為開發人員,必須要知道何時可能出錯,為什麼會出錯,以及會出什麼錯。本文將詳細介紹javascript中的錯誤處理機制error對象 error對象是包含錯誤資訊的對象,是javascript的原生對象。當代碼解析或運行時發生錯誤,javascript引擎就會自動產生並拋出一個error對象的執行個體,然後整個
Time of Update: 2017-01-19
前面的話 錯誤處理對於web應用程式開發至關重要,不能提前預測到可能發生的錯誤,不能提前採取恢複策略,可能導致較差的使用者體驗。由於任何javascript錯誤都可能導致網頁無法使用,因此作為開發人員,必須要知道何時可能出錯,為什麼會出錯,以及會出什麼錯。本文將詳細介紹javascript中的錯誤處理機制error對象 error對象是包含錯誤資訊的對象,是javascript的原生對象。當代碼解析或運行時發生錯誤,javascript引擎就會自動產生並拋出一個error對象的執行個體,然後
Time of Update: 2017-01-19
但是,有一些細節並不為我們所熟知。John Resig 在分析了這些細節之後,為我們提供了一個完美的解決方案,本文將作詳細介紹: 一、傳統方法不為人所知的細節 毫無疑問,在判斷函數類型時,我們使用的是typeof方法,比如: 複製代碼 代碼如下:function fn(){ //content } alert(typeof fn)//結果是"function"。 但是,該方法在一些瀏覽器中並不是像我們想像的那樣工作。 1、Firefox2和Firefox3
Time of Update: 2017-01-19
轉化為Boolean類型所有JavaScript中的值都能隱式的轉化為Boolean類型,比如: 複製代碼 代碼如下: 0 == false; // true 1 == true; // true '' == false // true null == false // true 但是這些值都不是Boolean類型。因此當我們使用三個等號進行比較時: 複製代碼 代碼如下: 0 === false; // false 1 === true; // false '' === false //
Time of Update: 2017-01-19
複製代碼 代碼如下:<!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>
Time of Update: 2017-01-19
再記錄一下 Javascript訪問樣式表 Javascript可以訪問網頁中元素的style屬性,例如: <div id="main" style="background-color:red"></div> 通過js訪問style屬性 alert(document.getElementById("main").style.backgroundColor); 通過js改變style屬性