как определить по кому кликнули при событие blur
Мне нужно в обработчике blur-а как-то определить по какому элементу произошел клик и в результате было вызвано событие blur у текущего инпута. Подскажите, пожалуйста, как это можно узнать. Спасибо.
|
1) Событие blur возникает не только из-за клика. Например при переходе TAB'ом.
2) Событие blur возникает раньше события click, поэтому, без машины времени тебе не обойтись. Как соберешь машину - приходи, поможем. Однако целевой элемент можно узнать в событии mousedown, предшествующему событию blur и click. Но опять же, не всякому click'у предшествует mousedown... |
Цитата:
2) А mouseup тоже предшествует событию blur? 3) И во всех ли браузерах во всех ОС событие mousedown предшествует событию blur? |
Цитата:
Цитата:
|
Продолжу тему. Есть вот это:
$('#dynamicbody').on('click','.mindcomment',function(){
var mind_data_tosrv = new Object();
mind_data_tosrv['action'] = 'comment';
$.ajax({
type: "POST",
url: "http://чччч.ru/mind",
contentType: "application/json; charset=UTF-8",
data: JSON.stringify(mind_data_tosrv),
success: function(data){
}
});
});
var focus = false;
$('#dynamicbody').on('blur','.mindcommentarrea',function(event) {
alert(event.target);
if(focus){
var id = ($(this).attr('id')).substring(2);
$('#mc'+id).css("display","none");
$(this).css({"height":"15px","width":"290px"});
focus = false;
}
}).on('focus','.mindcommentarrea',function() {
if(!focus){
var id = ($(this).attr('id')).substring(2);
$('#mc'+id).css("display","block");
$(this).css({"height":"120px","width":"340px"});
focus = true;
}
});
т.е. при клике на текстареа она увеличивается и появляется кнопка. Потом. Нужно сделать так чтобы при клике на эту кнопку, текстареа не сворачивалась по blur а отрабатывала событие кнопки вперед. Может быть можно как то 1) перехватить событие blur 2) сохранить его в "переменную" (или куда еще) 3) отработать клик 4) возобновить событие blur ??? |
| Часовой пояс GMT +3, время: 19:05. |