Safari дрожит/прыгает (ошибка?) при первом событии «фокуса» при загрузке страницы

В настоящее время я борюсь с очень неприятной ошибкой в ​​Safari, и я не уверен, где еще повернуть.

Кажется, что большинствоэлементов (но не все, и я не могу различить отличительный фактор), которые вызовут событие focus, вызовут переход всех элементов на странице. или анимированные для прыжка на ~2 пикселя вверх и влево. И это происходит только при первом событии фокуса после загрузки страницы.

Немного раздражает видеть ошибку, так как она находится в части входа в систему droplr.com, и я совершенно не смог выделить более простой случай на JSFiddle.

Если у вас есть/создали учетную запись и вошли в систему, нажмите на этот значок редактирования для перехода:

enter image description here

Вы увидите, что в первом фокусе страницы все дрожит. Вот временная шкала, когда на странице есть одно перетаскивание, и я активирую фокус на оскорбительном элементе:

enter image description here

При большем количестве перетаскиваний это просто больше того же самого, но кажется, что максимальное количество отрисовок составляет около 40. И профилировщик не предлагает ничего гнусного. Просто путешествие по внутренностям jQuery.

Если вместо размещения элементов с помощью translate3dили matix3dя просто использую topи left, эта ошибка исчезнет. . После нескольких часов отладки этого я в полной растерянности.

Надеюсь, кто-то видел нечто подобное, мог бы взглянуть или дать мне совет по отладке следующих шагов.

Большое спасибо!

Обновление:Дэйв Десандро предположил, что это было связано с 3D-ускорением, поэтому я попробовал вместо этого перевести, и, конечно же, это не вызвало дрожание Я понятия не имею, почему аппаратное ускорение должно запускаться с событием focus, и только один раз.

Я попытался установить для параметра transformZ значение 0 при загрузке страницы, чтобы ускорить работу оборудования, но и здесь не получилось. Любые дополнительные идеи приветствуются.

37
задан Joshua Cody 30 March 2012 в 11:52
поделиться