Не работает $(this) внутри объекта
Добрый день, написал маленький алгоритм, так как хочется сделать максимально красиво и читабельно решил переписать код в "объектном стиле". Пытаюсь найти ошибку дошел до того что (this) jqery не распознает как "этот элемент на который кликнули" Помогите пожалуйста, код ниже
$(document).ready(function() {
$("body").on("click","span",function(){obj_opros.click_positive()});
$("body").on("click","i",function() {obj_opros.click_negative()});
$("body").on("click","button",function() {obj_opros.click_button_opros()});
});
var obj_opros={
click_positive: function() {
$(this).parents().eq(1).removeAttr("class");
$(this).parents().eq(1).addClass("panel panel-default panel-success");
},
click_negative: function(){
$(this).parents().eq(1).removeAttr("class");
$(this).parents().eq(1).addClass("panel panel-default panel-danger");
},
}
|
Daniel_sol,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Daniel_sol,
$("body").on("click","span",obj_opros.click_positive);
или так
$("body").on("click","span",function() {
$.proxy(obj_opros.click_negative,this)()
});
|
Cпасибо большое, так заработало
|
| Часовой пояс GMT +3, время: 00:22. |