勵志

勵志人生知識庫

one方法

"one"方法在JavaScript中是一種事件處理函式,它的功能是讓所選定的元素綁定一個僅觸發一次的處理函式。這種方法與"bind"方法的參數一樣,但與"bind"方法的區別就是只對匹配元素的事件處理執行一次,執行完之後,以後再也不會執行,當然重新發起web請求時它又會執行一次。例如,你可以使用"one"方法為每一個匹配元素的特定事件綁定一個一次性的事件處理函式,如:

```javascript

$(selector).one(eventName, [data], fn);

```

其中,eventName是事件名稱,如click;data是傳給回調函式fn的參數,可以通過fn的事件參數.data.xxx來獲取;fn是要綁定的處理函式。

此外,"one"方法與"live"方法也有區別。"live"方法將一個事件處理程式附加到與當前選擇器匹配的所有元素(包含現有的或將來添加的)的指定事件上並返回jQuery對象。"live"方法主要是能處理動態添加的元素,給那些後添加的元素也一樣綁定事件。當調用"bind"時,jQuery對象匹配的元素將被附加上事件處理程式,但以後添加的元素並不會被附加該事件處理程式,因此,還需要對這些元素再次調用"bind"方法。"live"是先把事件綁定在document對象上面,通過事件冒泡,判斷當前處於目標狀態的元素是不是預綁定的那個元素對象,然後執行事件,屬於前期綁定,元素可以是已存在的,也可以是動態添加的。