Вы связываете размытие снова при каждом нажатии. Каждая привязка является новой, и они укладываются. Используйте .delegate()
(или .on()
) также для функции размытия.
скрипка: http://jsfiddle.net/W8que/11/
код:
content = $('#content');
content.on('click', 'div', function(){
$this = $(this);
$this.attr('contenteditable', 'true');
$this.focus();
});
content.on('blur', 'div', function(){
alert('blur');
});
Поскольку скрипка уже использовала jQuery 1.7.x, я пошел дальше и поменял .delegate()
на более актуальную .on()
. Добавил несколько других вещей, таких как кеширование $(this)
и не потрудился передать событие в функцию, так как нам ничего не нужно preventDefault()
или stopPropagation()
.