Обсуждение участника:Afinogenoff/qpreview.js
Активные обсуждения
ДокументацияПравить
Скрипт добавляет на верхнюю панель инструментов кнопку QPreview, генерирующую предпросмотр страницы с помощью AJAX.
Сравнение:
Предварительный просмотр | QPreview |
---|---|
Браузер посылает Mediawiki серверу исходный редактируемый текст | |
Браузер получает с сервера
Браузер делает запросы внешних CSS и Javascript файлов (обычно кэшируются) |
Браузер получает с сервера
|
Браузер
|
Браузер
|
Поле редактирования ничего не «помнит» | Можно отменить недавние изменения по Ctrl-Z |
Быстро нажимается по Alt-P (в FireFox 1.5 и IE) | Быстро нажимается по назначенной вами клавише |
Новая кнопка:
- в несколько раз сокращает время предпросмотра
- как минимум в два раза экономит входящий трафик
Демонстрация без установки:
- перейти на любую страницу редактирования
- скопировать в адресную строку браузера
javascript:function addOnloadHook(f){f()};importScript('User:Afinogenoff/qpreview.js');void 0
- нажать Enter, на панели кнопок должна появиться новая кнопка QPreview
- внести изменения в текст и нажать кнопку QPreview
Установка:
importScript('User:Afinogenoff/qpreview.js');
→ ваш monobook.js
Дополнительные параметры: (указаны со значениями по умолчанию)
qPreviewKey = '';
— «горячая клавиша»qPreviewName = 'QPreview';
— надпись на кнопкеqPreviewWait = 'Wait…'
— надпись при запросе к серверуqPreviewAtBottom = false;
— поместить ли кнопку внизу
Пример:
qPreviewKey = '`'; // горячая клавиша: тильда
qPreviewName = 'Быстрый';
qPreviewWait = 'Ждите…'
qPreviewAtBottom = true;
importScript('User:Afinogenoff/qpreview.js');
Результат (под окошком редактирования):
Быстрый
Предварительный просмотр
Недостатки:
- При быстром предпросмотре не отображаются сделанные вами изменения в интервиках, категориях и списке используемых шаблонов внизу.
- Разработчики могут в любой момент сделать скрипт нерабочим неожиданными изменениями в движке Mediawiki.
Технические детали
- Скрипт проверен в IE 6, FF 1.5, Opera 9.10.
- mw:Manual:Parameters_to_index.php: параметр
&live
- ajax.js: поддержка XMLHttpRequest