[英]Pass parameters to javascript functions which is bind to events
我有這樣的功能:
var that = this;
this.context.on('focus', function(i) {
var htmlElement = ele;
var style = {left: 'auto', color: '#000000'};
if(i !== null) {
i = that.context.size()/2;
style.left = i + 'px';
//find htmlElement in DOM and apply style to it
}
});
htmlElement和樣式將在不同的調用中對我有所變化。 我需要通過一個選項,例如
var options = {style: someVaue, htmlELement: somelement}
函數,以便可以使用不同的選項多次調用它。 如果我通過這樣的options
:
var that = this;
this.context.on('focus', function(i, options) {
//use options.style and options.htmlElement
});
那樣行不通。 顯然我做錯了,因為function
綁定到this.context
focus
事件。 this.context
將i
作為參數,但不能接受任何其他參數。 任何形式的幫助/建議,我們感激不盡。
我想我已經解決了。 感謝大家的幫助。 以下是選項的傳遞方式:
var that = this;
this.context.on('focus', function(i) {
var options = {i: i, style: someValue, htmlElement: someElement};
that.setStyle(options);
});
setStyle: function(options) {
var htmlElement = options.htmlElement;
var style = options.style;
if(options.i !== null) {
options.i = that.context.size()/2;
style.left = i + 'px';
//find htmlElement in DOM and apply style to it
}
}
請隨意發表評論!!!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.