我有这样的功能:
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
绑定到focus
this.context
事件i
有String
作为参数但不能接受任何其他参数。任何形式的帮助/建议表示赞赏。
答案 0 :(得分:0)
我想我已经找到了解决方案。谢谢大家的帮助。以下是如何传递选项:
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
}
}
请随时评论!!!