Показать сообщение отдельно
  #7 (permalink)  
Старый 29.07.2012, 00:06
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

так как при назначении обработчиков теряется this, то можно его залочить с помощью bind :
(если я правильно понял)
img.onload = this.getImdt.bind(this);

пример :
<script>
function Constr(ctx) {
	this.ctx = ctx;
	this.loadImg = function() {
		var img = new Image();
		img.src = "http://javascript.ru/forum/images/smilies/lol.gif";
		img.onload = this.getImdt.bind(this);
	};
	this.getImdt = function(x,y){
		alert(this.ctx); // нужно получить this.ctx 
	};
}
var ctx = "something text";
var obj = new Constr(ctx);
obj.loadImg();
</script>

Последний раз редактировалось melky, 29.07.2012 в 00:09.
Ответить с цитированием