1

例如,我有一个showTable采用 JQuery 对象的方法,showTable调用是该append对象的方法的参数。

这是我想要的结果:

body.append (this.showTable(body));

showTable返回要附加到的 HTML 字符串body。但我不喜欢打字body两次,感觉很笨重。如何隐含body要传递的变量?

4

2 回答 2

2

您可以在此处使用.append( function(index, html) )变体

body.append (this.showTable);

然后在里面

function showTable(){
    //here this points to the body element
}
于 2013-09-11T16:12:43.657 回答
0

让我们从以流利的风格重写它开始:

this.showTable(body).appendTo(body)

但这并不能真正回答问题。我认为它看起来更好。

为了回答这个问题,我会写一个辅助函数:

jQuery.fn.extend({
    appendTableTo: function(thing) { return this.showTable(thing).appendTo(thing) }
});
this.appendTableTo(body);
于 2013-09-11T16:15:59.857 回答