Максимизация / изменение размера диалогового окна в CKEDitor - PullRequest
3 голосов
/ 08 февраля 2010

Мне нужно программно развернуть / изменить размер диалогового окна CKEditor IFrame (то есть диалоговое окно CKEditor с кнопками «ОК» и «Отмена», а для остальных - встроенный фрейм) Мне нужно, чтобы диалог оставался в центре экрана.

Я вижу только функции для изменения размера и изменения положения окна, но чтобы использовать их, мне нужно сначала рассчитать размеры окна, чтобы перецентрировать его. Это глупо по ряду причин, API должен полностью с этим справиться.

Существует ли официальная функция API для этого или безопасный обходной путь?

Я могу использовать JQuery, но очень хотел бы использовать для этого встроенные функции.

Ответы [ 2 ]

2 голосов
/ 16 февраля 2010

Если у вас есть как изменение размера, так и перестановка, не сложно выполнить одну функцию:

(это псевдо-javascript, так как у меня нет времени его полировать, так что в основном идея)

function dialogResizeCentered (d,w,h){ //d-dialog, w,h-width, height
  var sw,sh; //screenwidth, screenheight
  var rx,ry; //null atm, for resize x, resize y
  get sw, sh from window. object
  rx = parseInt(sw/2-w/2);
  ry = parseInt(sh/2-h/2);
  d.call resize (w,h);
  d.call reposition(rx,ry);
}

, а затем в любое время вы можете просто позвонить dialogResizeCentered(d,600,400);

или

Или, если вы хотите, чтобы ваш диалог оставался по центру, я уверен, что есть что-то вроде window.onResize события, вызывающего эту функцию.

Надеюсь, я правильно понимаю:)

1 голос
/ 11 февраля 2010

Я сам использую CKEditor, но решил использовать диалоговое окно jquery UI для своих пользовательских диалогов, так как оно намного более гибкое и многофункциональное из коробки, оно доступно по адресу:

http://docs.jquery.com/UI/Dialog

Но если вы предпочитаете использовать пользовательский диалог CKEditor, то jQuery position ():

http://api.jquery.com/position/

height (), width () и offset () неоценимы при определении размера и положения диалогового окна:

http://api.jquery.com/category/manipulation/style-properties/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...