У меня есть текстовое поле, которое я бы хотел сосредоточить, несмотря ни на что.Лучший способ предотвратить размытие поля?
Проблема заключается в том, что моя страница загружает iframe (перекрестный домен), содержимое которого крадет фокус. Более того, пользователь может вводить текстовое поле, поскольку iframe крадет фокус, заставляя пользователя вводить текстовое поле iframe.
Я пробовал рассылать спам .focus()
, надеясь, что если он размыт, он мгновенно переориентируется. Похоже, что это сработает, но что происходит, так это то, что он не переключает фокус назад достаточно быстро - пользователь все еще может набирать поле фокусировки iframe.
Есть ли способ предотвратить размытие вообще? Или более быстрый способ переключить фокус обратно в текстовое поле?
Вот что я пытался, который не работает полностью:
//get the textbox DOM element to focus.
var my_textbox = $("#my_textbox").get(0);
//pretty straight-forward -- focus it.
var setFocus = function(){
my_textbox.focus();
}
//every 10ms refocus our textbox.
//apparently, 10ms is not fast enough, as some typing
//still occurs in the iframe's textfield.
setInterval(setFocus, 10);
Примечание: я сделал так же, как аналогичный вопрос вчера, но я думаю, что это один добирается до корня проблемы. Надеюсь, все в порядке.
Согласен - я никогда не испытывал висящего или не мог сосредоточиться на другом поле раньше, но это не значит, что его не существует. Я тоже отворачивался от сайта, чтобы никогда не возвращаться, если он делает это. Лучше всего иметь небольшой контент на странице, если вам требуется, чтобы пользователь обратил внимание на поле. Попытайтесь также расширить текстовое поле и, возможно, придать ему красную рамку или предупреждающее изображение рядом с ним или что-то в этом роде. – ClarkeyBoy