JS指令碼收藏(一些實用的函式)

2022-05-24 19:57:17 字數 1299 閱讀 8082

一、共享onload事件

這個函式的名字是addloadevent,它是由simon willison 編寫的。它只有乙個引數:打算在頁面載入完畢時執行的函式的名字。

下面是addloadevent函式將要完成的操作。

·把現有的window.onload事件處理函式的值存入變數oldonload。

·如果在這個處理函式上還沒有繫結任何函式,就像平時那樣把新函式新增給它。

·如果在這個處理函式上已經繫結了一些函式,就把新函式追加到現有指令的末尾。

下面是addloadevent函式的**清單:

function

addloadevent(func)

else

}}

這將把那些在頁面載入完畢時執行的函式建立為乙個佇列。當**變得越來越複雜時,無論打算在頁面載入完畢時執行多少個函式,只要多寫一條語句就ok啦!

addloadevent(firstfunction);

addloadevent(secondfunction);

二、在現有的元素後插入乙個新元素

dom中提供了insertbefore()方法,但是並沒有相應的insertafter()方法。故我們可以自己編寫乙個

**如下:

function

insertafter(newelement,targetelement)

else

}

三、查詢下乙個元素節點

**如下:

function

getnextelement(node)

if(node.nextsibling)

return

null

;}

四、利用js去更新某個元素的class屬性

直接使用dom設定或者修改樣式並不理想,如果能直接在樣式表裡修改就更好了。

當需要給乙個元素追加新的class時,可以按照以下步驟操作:

1、檢查classname屬性的值是否為null;

2、如果是,把新的class設定值直接賦值給classname屬性;

3、如果不是,把乙個空格和新的class設定值追加到classname屬性上去。

現在我們把以上步驟封裝為乙個函式addclass。這個函式需要兩個引數:第乙個是需要新增新class的元素(element),第二個是新的class設定值(value)。

**如下:

function

addclass(element,value)

else

}

收藏一些實用的 bash 別名和函式

作為乙個命令列探索者,你或許發現你自己一遍又一遍重複同樣的命令。如果你總是用ssh進入到同一臺電腦,如果你總是將一連串命令連線起來,如果你總是用同樣的引數執行乙個程式,你也許希望在這種不斷的重複中為你的生命節約下幾秒鐘。解決方案是使用乙個別名 alias 正如你可能知道的,別名用一種讓你的shell...

一些實用的Node指令碼

主要依賴archiver const fs require fs const archiver require archiver 建立生成的壓縮包路徑 const output fs.createwritestream dirname example.zip const archive archiv...

JS一些 實用竅門

const arr 11,22,33,44,55,66 arr.length 3 console.log arr 11,22,33 arr.length 0 console.log arr console.log arr 2 undefined可以使用物件解構的語法來獲取陣列的元素 const cs...