Выравнивание всплывающего окна по центру экрана.
Вложений: 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, время: 02:55. |