Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Расположение всплывающего окна

Расположение всплывающего окна


     14.08.2012    Общие вопросы    4594

вопрос
Столкнулся с проблемой, не могу найти код который отвечает за расположение всплывающего окна в ДЛЕ.
Казалось бы проще простого... но не могу и все =)
Мне нужно, чтобы оно появлялось не в центре окна, а в нижнем углу...
подскажите где искать...

Ответил: ScreN


Можно так.
Открыть файл:
ВАШ_ШАБЛОН/style/engine.css

Далее найти класс:
.ui-dialog

Дальше менять расположение как хотите.

Комментарии пользователей (6)

ScreN
10

207 | 102

ScreN - 15 августа 2012 17:30 - Юзер

Можно сделать чтобы окно ползло за страницей. Было фиксированным.

Устанавливаем окну позицию:
position: fixed;


Далее двигаем его с помощью margin:
margin-left: 0px;
margin-right: 0px;
margin-top: 0px;
margin-bottom: 0px;

Вместо "0" ставим своё значение.

Если вдруг окно не захочет двигаться. То пропиши так:
margin-left: 0px!important;
margin-right: 0px!important;
margin-top: 0px!important;
margin-bottom: 0px!important;

!important, для того чтобы сбить базовое положение окна. Чтобы окно игнорировало базовые настройки из JS файла, и принимало именно твои из CSS.

И так же вместо "0" задаешь свое положение, которое хочешь.

Сразу хочу заметить. Если у тебя стоят сторонние модули, которые гребут код всплывающего окна из базового файла DLE. То у них тоже послетает положение всплывающих окон. Их придется настраивать отдельно.

DatiX
2

174 | 112

DatiX - 16 августа 2012 09:43 - Юзер

я пробовал так делать раньше...но результата не было..... хз где еще искать...

DatiX
2

174 | 112

DatiX - 16 августа 2012 11:17 - Юзер

нашел где править...
файл jqueryui.js

такой код

position:{my:"center",at:"bottom",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&
c(this).css("top",a.top-b)}}


но при смене параметра my:"center" окно ведет себя как то странно..если пишу my:"left" то окно сдвигается в право..но не до конца..а где то на 25%.. как сделать, чтобы оно прилипло к правому краю?

ScreN
10

207 | 102

ScreN - 16 августа 2012 12:23 - Юзер

***Комментарий удален***

ScreN
10

207 | 102

ScreN - 16 августа 2012 12:46 - Юзер

DatiX,
Странно что у тебя не сработал данный код. Ну да ладно. Ок.

Открой файл:
dle_js.js

Найди в нем функцию:
function ShowPopupProfile

В самом конце данной функции найди:
    return false;
};

Сразу над этим выше найди:
$('#dleprofilepopup').dialog({
        autoOpen: true,
        show: 'fade',
        hide: 'fade',
        buttons: b,
        width: 450
    });

И замени на это:
$('#dleprofilepopup').dialog({
        autoOpen: true,
        show: 'fade',
        hide: 'fade',
        buttons: b,
        width: 450,
        position: 'right'
    });

Это прижмет окно к правому боку странице. Если нужно чтобы прижалось к левому боку, то пишешь
position: 'left'

Не забудь поставить запятую после
width: 450
иначе сломаешь весь код.

Данный код будет работать только для всплывающего окна "Информация о пользователе"
Пробуй....

ScreN
10

207 | 102

ScreN - 16 августа 2012 13:21 - Юзер

Можно конечно через файл jqueryui.js
Но как и в твоем случае, у меня окно почему то не прижалось к правому краю до конца.

А тебе я так понимаю нужно именно к нижнему правому краю страницы? Тут я уже бессилен. Сам только что пробовал. Получилось только к правому краю странице или левому краю странице окно прижать. И причем окно после этого, перестает воспринимать какие либо изменение в CSS файле. Хотел его там просто опустить вниз. Не вышло.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

 24.09.2012 Vladsuperklas  Общие вопросы