Выравнивание всплывающего окна по центру экрана.
Вложений: 1
Здравствуйте, форумчане!
У меня есть проблема со скриптом, всплывающее окно на отрез отказывается выравниваться по центру экрана, все время смещено в плотную к левому краю. Вот в этой функции идет расчет:
if (s == "center") {
s = Math.max((n.width() - p ) / 2, 0)
}
Если в место р поставить 800 (Это ширина всплывающего окна), то всплывающее окно выравнивается по центру, если оставить р то смещено к левому краю. Может в css нужно где то ширину задать? Весь код скрипта во вложении, так как не хочет сюда вставлять более 10000 символов, а там 14000. :cray: Возможно ли его уменьшить? Заранее благодарю!!! |
Вот часть кода, где расчет идет, может поможет, чтобы не скачивать..
if (e) {
i.expose().load(u)
}
var t = k.top;
var s = k.left;
var p = i.outerWidth({
margin: true
});
var q = i.outerHeight({
margin: true
});
if (typeof t == "string") {
t = t == "center" ? Math.max((n.height() - q) / 2, 0) : parseInt(t, 10) / 100 * n.height()
}
if (s == "center") {
s = Math.max((n.width() - p) / 2, 0)
}
if (!k.absolute) {
t += n.scrollTop();
s += n.scrollLeft()
}
i.css({
top: t,
left: s,
position: "absolute"
});
|
вы уверены, что вам нужна "ширина элемента с учетом внутренних отступов, рамки (border-width) и при необходимости внешних отступов (margin)"? просто p = i.width() не подходит? и да, чему вообще оказывается равно p при таких расчетах?
|
| Часовой пояс GMT +3, время: 14:08. |