Nano Hash - криптовалюты, майнинг, программирование

Расположить диалоговое окно jQuery UI в центре видимого экрана?

Я открываю диалоговое окно пользовательского интерфейса jQuery одним щелчком мыши, мне нужно, чтобы диалоговое окно располагалось в центре видимой части экрана / браузера.

Позиция по умолчанию для диалога jQuery размещает диалог в центре страницы:

position: { my: "center", at: "center", of: window } 

но страница, на которой у меня загружается диалоговое окно, очень длинная, с полосой прокрутки, поэтому диалоговое окно сначала появляется на полпути вниз по странице, когда я нажимаю на нее.

Есть идеи, как центрировать диалог на видимой части экрана?

Javascript для создания и открытия диалогового окна пользовательского интерфейса jQuery:

$(document).ready(function () {
    $("#dialog").dialog({
        autoOpen: false,
        modal: true,
        resizable: false,
        title: "Item Edit",
        buttons: {
            "Save": function (e) {
                $('input#<%=btnSave.ClientID %>').click();
                $(this).dialog("close");
                location.reload();
            }
        }
    });

    $(".item").on("click", function () {
        var itemId = $(this).attr("itemId");
        var url = window.location.protocol + "//" + window.location.host + 
                  "/ItemEdit.aspx?itemId=" + itemId;
        $("#dialog").load(url);
        $("#dialog").dialog("open");
        return false;
    });
});

Я использую jQuery 1.11.1 и jQuery UI 1.11.1, демонстрация скрипта ниже, похоже, работает правильно, но версии jQuery не совпадают. Основная идея заключается в том, что когда на странице находится вертикальная полоса прокрутки, центральное положение по умолчанию в диалоговом окне не работает.

Демонстрация JSFiddle - http://jsfiddle.net/t2zf7xow/6/


  • Можете ли вы создать пример jsFiddle? 20.02.2015
  • Я добавил пример JSFiddle. Пример работает правильно, но в реальном браузере с используемыми мной версиями jQuery - нет. 21.02.2015
  • Хммм, это определенно дилемма. У вас есть ошибки в консоли браузера? 21.02.2015
  • Я не получаю ошибок в консоли браузера. При запуске моего кода в реальном браузере диалоговое окно jQuery правильно центрируется по горизонтали и вертикали, но при вертикальном выравнивании учитывается все окно, а поскольку документ длиннее экрана, он имеет вертикальную полосу прокрутки. Когда я нажимаю ссылку, чтобы открыть диалоговое окно jQuery, вертикальная полоса прокрутки позиционируется точно посередине. Поэтому, если я начинаю с верхней части страницы и нажимаю ссылку, страница прокручивается вниз до середины всего документа. 21.02.2015
  • В моем случае это было так: stackoverflow.com/a/28107538/1763732 Невероятно, но здорово 10.05.2015

Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..