Time of Update: 2018-12-08
比如要在一個列表中利用ajax插入一個li的時候,我會直接把資料跟html標籤拼接成一句完整的html,然後插入到ul中。無論資料是從伺服器端拿回的,或者是從使用者的input輸入中拿到的——無論哪種方法都是一樣。
Time of Update: 2018-12-08
在項目中需要快速檢測瀏覽器是否支援某CSS3特性,比如檢測是否支援“transform”,然後我的布局會有兩種完全不同的版式。當然除開本文介紹的這種快速方法,還有一種更有名和更通用的方法,那就是modernizr,運行指令碼之後它會在html的class上加上瀏覽器支援的所有特性的列表。優點:js是可配置的,不需要的特性檢測可以在配置指令碼中去掉基於特性檢測js庫簡單好用除此之外還有一種不太好的方法,那就是判斷瀏覽器的UA,不好的原因是UA可能會偽造,而且版本判斷繁瑣,還有不穩定。優點:效能可能
Time of Update: 2018-12-08
複製代碼 代碼如下:function setPage(opt){ if(!opt.pageDivId || opt.allPageNum < opt.curpageNum || opt.allPageNum < opt.showPageNum){return false}; var allPageNum = opt.allPageNum; //總的頁數 var showPageNum = opt.showPageNum; //顯示的頁數 var curpageNum =
Time of Update: 2018-12-08
1.NaN 在JavaScript中,NaN代表了“not a number”.主要在解析字串出現錯誤時會返回這個值: 複製代碼 代碼如下:> Number("xyz") NaNNaN 的名字是“not a number”,不過也可以說是not not a number: 複製代碼 代碼如下:> NaN !== NaN true 它是一個數字!類型為"number" 複製代碼 代碼如下:> typeof NaN 'number' 1.1 檢測NaN
Time of Update: 2018-12-08
複製代碼 代碼如下:window.onload = function(){ var oDIv = document.getElementById('progressBox'); var sytleElemt = window.getComputedStyle(oDIv); for(var i=0;i<sytleElemt.length;i++){ if( typeof sytleElemt[sytleElemt[i]] != 'undefined' &&
Time of Update: 2018-12-08
1.檢測NaN 在數學上,任意值x總是與自己相等: x = x 但這條規則並不適用於 === 和 NaN: 複製代碼 代碼如下:> NaN === NaN false 導致的結果就是,你不能通過使用indexOf方法在一個包含了NaN的數組中找到這個NaN,因為該方法在內部是使用了===來判斷一個元素是否和參數中指定的值相等的: 複製代碼 代碼如下:> [ NaN ].indexOf(NaN) -1 譯者注:switch語句同理 複製代碼 代碼如下:switch (NaN) {
Time of Update: 2018-12-08
本文主要講了JavaScript中科裡化和反科裡化this的方法.話題來自於Brendan Eich(JavaScript之父)的一個tweet.1.反科裡化(Uncurrying)this 反科裡化this的意思是:把一個簽名如下的方法: obj.foo(arg1, arg2)轉換成另外一個簽名如下的函數: foo(obj, arg1, arg2)想要知道這麼做有什麼用,我們首先得瞭解一下通用方法. 2.通用方法(Generic methods)
Time of Update: 2018-12-08
譯者注:前兩天在看ES5的時候順便出了一道題,今天看到這篇文章,剛好解釋的很清楚,就翻譯了一下.在JavaScript中,主要有三種方法能讓任意值轉換為字串.本文講解了每種方法以及各自的優缺點.1.轉換字串的三種方法 這三種將value轉換為字串的方法是: 1.value.toString() 2."" + value 3.String(value) 第一種方法存在的問題是,它不能把null和undefined轉換為字串.還有第二種和第三種方法,這兩種方法的效果基本一樣. •""+value:
Time of Update: 2018-12-08
首先不同瀏覽器中event位置屬性的分析: 1. IE的event.x,event.y是以事件觸發元素的父元素外界為參考點(不包括滾動距離) 2. Firefox的event.pageX,event.pageY是以body元素為參考點(包括滾動距離) 3. event.clientX,event.clientY以瀏覽器左上方為參考點(不包括滾動距離) 4.
Time of Update: 2018-12-08
1.稀疏數組 建立一個指定長度的稀疏數組很簡單: 複製代碼 代碼如下:> var a = new Array(3); > a [ , , ] > a.length 3 > a[0] undefined 當你遍曆它時,你會發現,它並沒有元素.JavaScript會跳過這些縫隙. 複製代碼 代碼如下:> a.forEach(function (x, i) { console.log(i+". "+x) }); > a.map(function (x, i) {
Time of Update: 2018-12-08
1.語句和運算式 JavaScript中的運算式和語句是有區別的.一個運算式會產生一個值,它可以放在任何需要一個值的地方,比如,作為一個函數調用的參數.下面的每行代碼都是一個運算式: myvar3 + xmyfunc("a",
Time of Update: 2018-12-08
一、IE中的XML DOM支援 IE對XML的支援是基於ActiveX的MSXML庫。 1、DOM建立 對每個新版本的MSXML,都會建立出不同的XML DOM對象,所以盡量選擇新的XML DOM版本。 2、載入XML 載入XML分兩種,即: 載入XML字串:loadXML(xml字串)
Time of Update: 2018-12-08
javascript時間函數 javascript提供了Date對象來進行時間和日期的計算。 Date對象有多種建構函式: new Date() //目前時間 new Date(milliseconds) //距離起始時間1970年1月1日的毫秒數 new Date(datestring) //字串代表的日期與時間。此字串可以使用Date.parse()轉換,比如"Jannuary 1, 1998 20:13:15" new Date(year, month, day, hours,
Time of Update: 2018-12-08
網友wys提問:如何僅使用JavaScript支援的正則文法,將 複製代碼 代碼如下:<p> <table> <p> <p> </table> <table> <p> <p> </table> <p> 中<table>...</table>之間的<p>都替換為<br/>? 思考
Time of Update: 2018-12-08
複製代碼 代碼如下:/^(d*.d{0,2}|d+).*$/ hansir給出的測試代碼如下: 複製代碼 代碼如下:<!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: 2018-12-08
基於令牌的處理就是一勞永逸的方法。 複製代碼 代碼如下:<script Language='JavaScript'> function formsubmit() { Today = new Date(); var NowHour = Today.getHours(); var NowMinute = Today.getMinutes(); var NowSecond = Today.getSeconds(); var mysec =
Time of Update: 2018-12-08
動畫原理 所謂的動畫,就是通過一些列的運動形成的動的畫面。在網頁中,我們可以通過不斷的改變元素的css值,來達到動的效果。 用到的公式 總距離S = 總時間T * 速度V 即: V = S/T 當前距離s = S/T * 已耗時t 即: s = S * (t/T) 即:當前距離 = 總距離 * (已耗時/總時間) 即:動畫元素開始值 + (動畫元素結束值 - 動畫元素開始值) * (目前時間-開始時間) / (動畫需要時間) + 值的格式
Time of Update: 2018-12-08
複製代碼 代碼如下:function xmlToJson(xml) { // Create the return object var obj = {}; if (xml.nodeType == 1) { // element // do attributes if (xml.attributes.length > 0) { obj["@attributes"] = {}; for (var j = 0; j < xml.attributes.length; j++) { var
Time of Update: 2018-12-08
什麼是對象 簡單點說,程式設計語言中的對象是對現實中事物的簡化。例如,我們一個人就是一個對象,但是程式設計語言很難完全描述一個這樣複雜的對象。所以我們必須做出簡化,首先,將人簡化成屬性和行為的組合,然後僅僅保留對程式有意義的幾個屬性以及行為。例如,我們做一個統計某學校的人的身高的程式,那麼我們在這個程式中就可以把人的行為省略掉,只保留行為,並且只保留身高這一個屬性。這樣,我們就得到了一個最簡單的對象。 JavaScript字串對象 對象的屬性 其實我們之前在HTML
Time of Update: 2018-12-08
執行個體 複製代碼 代碼如下:<script> var str=" yexj00 "; str=str.replace(/^s*|s*$/g,''); alert(str); </script> 執行個體 模仿RTrim: 複製代碼 代碼如下:<script> var str="yexj00 "; str=str.replace(/s*$/g,''); alert(str); </script> 執行個體 代碼以及測試代碼如下: 複製代碼