作者senser (彷佛曾经一起死过)
看板Ajax
标题Re: [问题] 如何取得父层函式的this
时间Sun Jul 17 02:58:05 2011
当然不一样瞜..
这个function declaration 里的this会refer到global object(就是你的window哩)
另外原作大概是笔误写了个匿名函式..
得给他个名字或是包起来才不会error
function myCoolFunction(){
this.hide() <---这边的this
}
(function{
this.hide() <---这边的this
})()
either way..
※ 引述《windwofswold ( ◤〔ζ狼ζ〕◢)》之铭言:
: 你要这种吗XD
: $('#tt tr').click(function(){
: var self = this;
: function(){
: self.xxxx; // 父层的this
: this.hide()
: }
: });
: 如果第二个function 是包callback
: 他的this才会不一样不是吗@__@
: ※ 引述《genomini (不重要)》之铭言:
: : 假如
: : $('#tt tr').click(function(){ <--父层
: : function(){
: : this.hide() <---这边的this
: : }
: : });
: : 请问有无指令是可以取得父层的this呢?
: : 还是说只能在外面多加一个变数存父层的this
: : 然後再子层呼叫那变数@@
: : 如
: : $('#tt tr').click(function(){ <--父层
: : var x = $(this);
: : function(){
: : x.hide() <---这边的this
: : }
: : });
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 71.119.252.59
※ 编辑: senser 来自: 71.119.252.59 (07/17 03:38)
1F:→ senser:一般来说 这种function declaration在js要尽量避免才是.. 07/17 03:39
2F:推 amosa:function.apply( instance , args ) 07/19 13:54