Я использую сортируемое взаимодействие jQuery UI и Jeditable .Идея заключается в том, что пользователь может переупорядочивать элементы и влиять на содержимое этих элементов.Я сталкиваюсь с тем, что onblur event
, который у меня есть для настройки Jeditable, прослушивается сортируемым слушателем jQuery.
Пользователь может щелкнуть элемент Jeditable, и этот элемент станет редактируемым, но когдаони щелкают, если они нажимают на li
, который сортируется, событие onblur игнорируется.Событие не игнорируется, если они щелкают за пределами li
.Как я могу сообщить Jeditable о событии размытия, когда они щелкают внутри li
?
Вот jsFiddle, иллюстрирующий проблему
Разметка HTML
<ul class="elementlist">
<li id="elementSk_10">
<span class="editable-element" id="10">TEXT!</span>
</li>
<li id="elementSk_33">
<span class="editable-element" id="33">Some text</span>
</li>
</ul>
Jeditable
$('.editable-element').editable('http://jsfiddle.net/echo/jsonp/', {
onblur: 'submit',
width: 250,
indicator: 'Saving...'
});
jQuery UI Сортируемый
$(".elementlist").sortable({
update: function(event, ui) {
var elementSerialized = $(this).sortable('serialize');
$.post('http://jsfiddle.net/echo/jsonp/', {
elementSk: $(this).sortable('serialize')
});
}
});
Редактировать : В попытке прояснить, что происходит, позвольте мне сделать пошаговое руководство, сопровождаемое скриншотами.
- Нажмите
Some Text
- Нажмите
li
, содержащий TEXT!
- Отпустите, нажмите
TEXT!
На данный момент я ничего не переупорядочил.Нажатие на li
и отпускание не вызвали onblur
для Jeditable.Я хотел бы, чтобы простой щелчок убрал, чтобы вызвать onblur.Если я не подключу сортируемое, вот как это работает.Я должен верить, что каким-то образом щелчок на li
поглощается сортируемым.
Вот еще один пример с переупорядочением, но по-прежнему нет onblur
.
- Нажмите
Some Text
- Нажмите
li
содержащий TEXT!
- Переместить
TEXT!
ниже Some Text
- Отпустить удержание на
TEXT!
После переупорядочения элементов и освобождения li
, содержащего TEXT!
, onblur
не захватывается.Элементы находятся в новом порядке, но Some Text
все еще находится в редактируемом состоянии.
Все, что здесь сказано, это то, что я ожидаю:Нажатие на что-либо за пределами поля, редактируемого в данный момент, должно вызвать срабатывание onblur
Jeditable.Что именно и происходит, если сортировка jQuery не подключена.Когда сортировка jQuery связана с поведением onblur
, я должен щелкнуть за пределами элементов списка сортировки.