У меня есть эта простая демонстрация:
function foo() {
alert('Works!');
}
var inp = document.createElement('input');
inp.onblur = foo;
document.body.appendChild(inp);
Смотрите здесь: http://jsfiddle.net/A7aPA/
Как вы можете видеть, это работает. (Нажмите на вход, затем щелкните в другом месте и появится предупреждение.)
Однако, если я добавлю эту строку в код JavaScript:
document.body.innerHTML += '<br>';
тогда обработчик размытия перестает работать (и ошибка не возникает из-за ошибки).
См. здесь: http://jsfiddle.net/A7aPA/1/
Почему это?