Вот лучшее, что я мог придумать, чтобы решить эту проблему (у меня была такая же проблема), используя функции, на которые ссылается JasCav в ответе выше ( эти функции ):
dialogClass: 'dialog_fixed',
create: function(event, ui) {
disable_scroll(); // disable while dialog is visible
$('#dialog_form').hover(
function() { enable_scroll(); }, // mouse over dialog
function() { disable_scroll(); } // mouse not over dialog
);
},
beforeClose: function(event, ui) {
enable_scroll(); // re-enable when dialog is closed
},
css:
.dialog_fixed { position:fixed !important; }
, и он просто сохраняет диалог на странице, что, возможно, нам больше не нужно.
Это позволяет прокручивать мышь, пока мышьнаходится над диалогом, но не когда он находится вне диалога.К сожалению, он все равно будет прокручивать главную страницу, когда указатель мыши находится над диалоговым окном, а вы прокручиваете конец содержимого внутри диалогового окна (сразу в IE, в Safari и Firefox после небольшой задержки).Я хотел бы знать, как это исправить.
Я проверял это в Safari 5.1.5, Firefox 12 и IE 9.