У меня есть iframe (id: 'chat'
) с designMode='on'
в Chrome.
При событии Enter keypress я вызываю функцию send()
, которая берет содержимое iframe и записывает его в сокет. Моя проблема в том, что при очистке фрейма я теряю фокус.
Как мне установить фокус, чтобы я мог продолжать печатать текст в iframe?
function send(){
var $iframe = $('#chat');
var text = $iframe.contents().text() + "\n";
socket.send(text);
// When this is done, the focus is lost
// If commented, the focus will not be lost
$iframe.contents().find('body').empty();
// My different failed attempts to regain the focus
//$iframe.focus();
//$iframe.contents().focus();
//$iframe.contents().find('body').focus();
//$iframe.contents().find('body').parent().focus();
//$iframe[0].contentWindow.focus();
// I've also tried all the above with timers
//setTimeout( function(){ $('#chat').contents().focus(); }, 100);
}
Я пробовал многие решения по другим вопросам, но, похоже, ни один из них не работает.