У меня есть объект, который я создал в JavaScript. Скажем, это выглядит следующим образом:Обработка событий на динамически создаваемых объектах JavaScript
function MyObject() {
this.secretIdea = "My Secret Idea!";
};
MyObject.prototype.load = function() {
this.MyButton = $(document.createElement("a"));
this.MyButton.addClass("CoolButtonClass");
this.MyButton.click = MyButton.onButtonClick;
someRandomHtmlObject.append(this.MyButton);
};
MyObject.prototype.onButtonClick = function(e) {
alert(this.secretIdea);
};
Как вы можете видеть, у меня есть настройки объекта в JavaScript, и, когда он загружен, он создает якорь тег. Этот якорный тег в качестве фонового изображения в CSS (так что он не пуст).
Теперь я понимаю, что выражение «это», когда кнопка будет нажата, попадет в область действия элемента MyButton, а не из объекта, который я создал.
Я попытался использовать вызовы(), try() и bind(), и я не могу заставить это работать. Мне нужно, чтобы при нажатии кнопки она возвращалась к области объекта, а не к области содержимого html.
Что мне здесь не хватает?
О, я получить его. Это прекрасно работает! Awesome, спасибо! – Kris