我從ExtJS的轉換一些JavaScript jQuery的,我不知道這是什麼一樣,所以我不知道該怎麼把它轉換成...什麼是jQuery等同於此,它有什麼作用?
hideTimeout = setTimeout(this.hideAll.createDelegate(this), delay);
延遲= 200
我「M不知道是createDelegate(this)
......
更新
所有JS是...
Menu.prototype = {
init: function() {
var that = this;
this.ui.link.bind("mouseover", function (e) {
that.show();
});
this.ui.link.bind("mouseout", function (e) {
that.hide();
});
var subOptions = $("li", this.ui.parent);
$.each(subOptions, function (el) {
el = $(el);
el.bind("mouseover", that.cancelTimeout, this);
el.bind("mouseout", that.hide, this);
});
},
hideAll: function() {
$("#hd .nav ul ul").hide();
},
show: function() {
this.hideAll();
this.cancelTimeout();
showTimeout = setTimeout((function() {
this.el.show();
}).createDelegate(this), delay);
},
hide: function() {
this.cancelTimeout();
hideTimeout = setTimeout(this.hideAll.createDelegate(this), delay);
},
cancelTimeout: function() {
clearTimeout(hideTimeout);
clearTimeout(showTimeout);
}
};
對不起,我沒有給你足夠的細節,以真正瞭解發生了什麼事.... ....你是什麼意思委託處理程序?我如何在jQuery中做到這一點? – Webnet 2010-11-19 01:32:21
那麼我怎麼用jQuery來做到這一點呢? – Webnet 2010-11-19 01:37:26
@Webnet - 它似乎爲它所調用的函數設置了一個上下文。所以它會在這裏影響的函數是'hideAll'。 jQuery有一個名爲'jQuery.proxy()'的方法,它類似,但可能不需要。取決於如何使用'hideAll'。 – user113716 2010-11-19 01:38:03