Mootools中使用bind給函式繫結物件

2022-02-25 02:21:26 字數 547 閱讀 3010

我們先來看一下下邊的**:

function fun();

fun();

上邊的函式我想實現的功能是給函式所對應的物件this設定css屬性,然後我在呼叫函式的時候並未傳遞給這個函式任何物件,那麼此時this應該對應的物件時window

那如果我要操作指定的某個節點該怎麼做呢?看下邊傳統的方式:

function fun(o);

fun($('id'));

這是一種最傳統的做法,要求我們在呼叫函式的時候傳遞物件給函式,此時就可以在函式內操作該物件了,然而mootools給我們提供了乙個更好的方法來實現此功能,如下:

function fun();

var bfun = fun.bind($('id'));把$('id')繫結給fun的this

bfun();

我們在呼叫函式之前首先給fun用bind方法把$('id')這個節點繫結給了fun,並賦值給bfun,之後我們呼叫bfun就行了,這時候在fun內操作this的時候就相當於在操作$('id')

使用 Bind 方法

使用 bind 方法一樣來檢索資料繫結欄位的值,但當資料可以被修改時,還是要使用 bind 方法。在 asp.net 中,資料繫結控制項 如 gridview detailsview 和 formview 控制項 可自動使用資料來源控制項的更新 刪除和插入操作。例如,如果已為資料來源控制項定義了 s...

6 4 2 使用 bind 函式

6.4.2 使用 bind 函式 下一步,我們想消除外層的模式匹配。這樣做,使用 option.map 是不可能的,因為,該函式總是輸入值 none 轉換到 輸出值 none,輸入值 some 轉換到輸出到攜帶另乙個值的 some。在外層的模式匹配中,我們要做的事情很不一樣。即使輸入值是 some,...

bind 的使用缺陷

bind好像不能繫結乙個多態函式 比如 test test int 無論繫結任何乙個都有問題 下面的內容試過,但是沒有效果 繫結乙個被過載的函式的企圖通常對導致乙個錯誤,因為無法表示到底要繫結哪乙個過載版本。對於帶有 const 和非 const 兩個過載的成員函式來說,這是乙個很常見的問題,就像這...