우수한 얻을 : this
이 jquery.click
함수 내에서 this.background
참조하기 때문에 JQuery와 .click()는 내가 가진 내 클래스의 방법 내부이
this.background.click(function() {
this.terminate();
});
은 분명히
this.terminate();
이 작동하지 않습니다. 상급반에서
this
을 얻으려면 어떻게해야합니까?
우수한 얻을 : this
이 jquery.click
함수 내에서 this.background
참조하기 때문에 JQuery와 .click()는 내가 가진 내 클래스의 방법 내부이
this.background.click(function() {
this.terminate();
});
은 분명히
this.terminate();
이 작동하지 않습니다. 상급반에서
this
을 얻으려면 어떻게해야합니까?
변수가 포함 된 외부 this
를 선언 :
var self = this;
this.background.click(function() {
self.terminate();
});
시도 :
this.background.click($.proxy(this.terminate, this));
당신은 앤드류 말한 것처럼 만들 수있다, 또는 할 수있다 "yourObject.terminate를();"
예 : 개선을위한
var yourObject = {
background: $("#background"),
terminate: function()
{
alert("do something...");
},
addEvents: function()
{
this.background.click(function()
{
yourObject.terminate();
});
}
};
$(function()
{
yourObject.addEvents();
});
의 '배경'선택이 존재 확인의 "및 사용 JQuery와") (라이브 "또는"위임() "또는 (자바 스크립트 HTML 전에 부하시)() "요소에 이벤트를 첨부합니다.
사용 바인드
$(".detailsbox").click(function(evt){
test.bind($(this))();
});
function test()
{
var $this = $(this);
}
나는 그것이 = P +1 잘못이 저를 구타 읽기 –