фокус jQuery () иногда не работающий в IE8

"Unicode", к сожалению, используется всевозможными способами, в зависимости от контекста. Его самое корректное использование (IMO) как кодированный набор символов - т.е. ряд символов и отображения между символами и целым числом кодовые точки представление их.

UTF-8 является кодировкой символов - способ преобразовать из последовательностей байтов к последовательностям символов и наоборот. Это покрывает весь набор символов Unicode. ASCII кодируется как единственный байт на символ, и другие символы берут больше байтов в зависимости от своей точной кодовой точки (до 4 байтов для всех в настоящее время определяемых кодовых точек, т.е. до U-0010FFFF, и действительно 4 байта могли справиться до U-001FFFFF).

, Когда "Unicode" используется в качестве названия кодировки символов (например, как.NET Кодирование. Свойство Unicode ) это обычно означает UTF-16, который кодирует наиболее распространенные символы двумя байтами. Некоторые платформы (особенно.NET и Java) используют UTF-16 в качестве своей "собственной" кодировки символов. Это приводит к волосатым проблемам, если необходимо волноваться о символах, которые не могут быть закодированы в единственном значении UTF-16 (они кодируются как "суррогатные пары") - но большинство разработчиков никогда не волнуется об этом, IME.

Некоторые ссылки на Unicode:

16
задан oskarae 26 August 2009 в 16:55
поделиться

2 ответа

Поскольку вы не разместили код, вы используете:

$(document).ready(function(){
    //code here
});

Это заставит javascript запускаться после загрузки HTML.

И вы также должны использовать живые события . Когда вы добавляете входы в dom, фокус будет автоматически привязан к ним.

$("p").live("focus", function(){
   alert( $(this).text() );
});

Это означает, что каждый созданный p будет иметь привязанный к нему фокус.

1
ответ дан 30 November 2019 в 15:41
поделиться

У меня была аналогичная проблема с моим приложением, но я не могу воспроизвести проблему с фокусом в вашем коде. Моя проблема немного отличалась тем, что на моей странице был хеш ссылки, из-за которого IE не фокусировался на моем элементе.

В любом случае, чтобы обойти эту проблему, я добавил тайм-аут:

setTimeout(function () {
  $('.my-thing').focus();
}, 100);

Незаметно для пользователя, но дает IE передышку.

30
ответ дан 30 November 2019 в 15:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: