Я использую диалог jQuery UI с modal=true
. В Chrome и Safari это отключает прокрутку с помощью полосы прокрутки и клавиш курсора (прокрутка с помощью колеса мыши и страницы вверх/вниз по-прежнему работает).
Это проблема, если диалог слишком высок, чтобы соответствовать одной странице - пользователи на ноутбуке расстраиваются.
Кто-то поднял эти три месяца назад на трекер ошибок jQuery - http://dev.jqueryui.com/ticket/4671 - это не похоже на фиксацию, это приоритет.:)
Так кто-нибудь:
- У вас есть исправление для этого?
- предложили обходное решение, которое обеспечило бы достойный опыт использования?
Я экспериментирую с mouseover/scrollto на битах формы, но это не отличное решение: (
РЕДАКТИРОВАТЬ: реквизит в Rowan Beentje (который не на SO afaict) для поиска решения этого. Пользовательский интерфейс jQuery предотвращает прокрутку, захватывая события mouseup/mousedown. Таким образом, приведенный ниже код исправляет это:
$("dialogId").dialog({
open: function(event, ui) {
window.setTimeout(function() {
jQuery(document).unbind('mousedown.dialog-overlay')
.unbind('mouseup.dialog-overlay');
}, 100);
},
modal: true
});
Использование на свой страх и риск, я не знаю, какое другое немодное поведение может отменить этот материал.