Ошибка Firefox: событие щелчка потеряно, если изменить размер: вертикальная установка на фокусе

В IIS6 или 7 вы можете использовать IIRF , бесплатный фильтр перезаписи. Вот правило, которое я использовал:

# Iirf.ini
#

RewriteEngine ON
RewriteLog  c:\inetpub\iirfLogs\iirf-v2.0.services
RewriteLogLevel 3
StatusInquiry  ON  RemoteOk
CondSubstringBackrefFlag *
MaxMatchCount 10

# remove the .svc tag from external URLs
RewriteRule  ^/services/([^/]+)(?

21
задан rwalter 21 July 2015 в 11:44
поделиться

3 ответа

В то время как это действительно похоже на ошибку (благодарит регистрировать его!), обычно событие щелчка отправлено самому глубокому элементу, который наблюдал и mousedown и mouseup события. Таким образом, можно так же "повредить" событие щелчка путем перемещения текстовой области в :focus (например, position:absolute; top: xxx) - это вызвано тем, что порядок событий является mousedown-> фокус (обновляет веб-страницу)-> mouseup-> щелчок.

resize свойство управляет "анонимным содержанием", это не видимо к веб-странице, но используемое браузером для реализации дополнительного UI для преимущества пользователя. Мое предположение - то, что изменения в этом содержании вмешиваются в [1 110] click обнаружение событий , но не смотря на это в отладочная сборка невозможно сказать наверняка.

function logEvent(ev) {console.log(ev.type, window.getComputedStyle(document.querySelector("textarea")).resize)}

document.querySelector("textarea").addEventListener("mousedown", logEvent, false);
document.querySelector("textarea").addEventListener("focus", logEvent, false);
document.querySelector("textarea").addEventListener("mouseup", logEvent, false);
document.querySelector("textarea").addEventListener("click", logEvent, true);
textarea:focus{
  position:absolute; top: 500px;
  /*resize:vertical;*/
}
<textarea>click me</textarea>
0
ответ дан 17 October 2019 в 02:38
поделиться

используйте JQuery, onlcick событие

$("textarea").click(function() {
alert("clicked");
});
-2
ответ дан 17 October 2019 в 02:38
поделиться

Самый простой путь состоит в том, чтобы использовать фокус jQuery. Для меня это более просто все же эффективное и применимое ко всему виду браузеров.

, Если Вы хотите это внимание к загрузке страницы.

$( document ).ready(function() {
     $('#txtId').focus();
});
-2
ответ дан 17 October 2019 в 02:38
поделиться
Другие вопросы по тегам:

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