LinkPreview показывает предварительный просмотр страницы при наведении на ссылку. Идея базируется на Extension:Popups.
Установка[]
Настройка[]
Доступны через window.pPreview
- Создание конфигурации (необходимый первый шаг)
window.pPreview = $.extend(true, window.pPreview, {RegExp: (window.pPreview || {}).RegExp || {} });
Key | Default | Описание | Example |
---|---|---|---|
csize
|
100 | размер кеша. | window.pPreview.csize = 100;
|
debug
|
false
|
режим отладки, подробный вывод. Доступен также через &debug=1 .
|
window.pPreview.debug = true;
|
apid
|
false
|
использовать встроенные функции для получения данных. Быстро (делается только один запрос), но подчиняется общим ограничениям на размер изображения (слишком маленькие изображения не будут использоваться). | window.pPreview.apid = true;
|
defimage
|
- | изображение по умолчанию (используется до загрузки изображения из статьи). | window.pPreview.defimage = 'https://wikia.nocookie.net/someimage';
|
noimage
|
- | если в статье не найдено изображение, то показать это. | см. defimage .
|
delay
|
100 | задержка начала обработки. | window.pPreview.delay = 100;
|
dock
|
'#mw-content-text, #article-comments'
|
контейнер статьи. | window.pPreview.dock = '#mw-content-text';
|
fixContentHook
|
true
|
убедиться, что #mw-content-text (текст статьи) был обработан.
|
- |
scale : {r: '?', t: '/scale-to-width-down/350?'}
|
- | заменить r на t в пути к изображению (масштабирование от vignette). Используйте scale=false , если размер картинки менять не надо.
|
window.pPreview.scale = {r: '?', t: '/scale-to-width-down/350?'};
|
tlen
|
1000 | максимальный размер текста. | window.pPreview.tlen = 1000;
|
wholepage
|
false
|
обработать всю страницу, а не только секцию 0. Доступно также через &wholepage=1 .
|
window.pPreview.wholepage = true;
|
pibox
|
false
|
Do not remove portable infobox (actually, any aside items). | window.pPreview.pibox = true;
|
piboxkeepprev
|
false
|
Do not remove portable infobox's preceding elements. If you have layout like <some things portabe infobox>, and want to keep some things alive. pibox=true required is.
|
window.pPreview.piboxkeepprev = true;
|
RegExp.iimages
|
[]
|
массив RegExp или обычного текста. Игнорируемые изображения, которые не будут использоваться в предпросмотре.
|
window.pPreview.RegExp.iimages = [/myimage\.png/, new RegExp('myim.*'), 'some text'];
|
RegExp.ilinks
|
[]
|
массив RegExp 'ов или текстовых строк. Игнорируемые ссылки, при наведении на них предпросмотра не будет.
|
см. iimages .
|
RegExp.iclasses
|
[]
|
массив строк. Игнорируемые классы, ссылки с этими классами будут проигнорированы. | window.pPreview.RegExp.iclasses = ['myclass1', 'myclass2'];
|
RegExp.iparents
|
['[id^=flytabs]']
|
массив строк (объекты jQuery/DOM возможны, но не тестировались). Игнорируемые элементы верхнего уровня (родители). Потомки этих элементов будут проигнорированы. Элементы tabview игнорируются по умолчанию. | window.pPreview.RegExp.iparents = ['.myclass', '#myid', 'div[data-ignore-me=1]'];
|
RegExp.onlyinclude
|
[]
|
Array of strings (jQuery/DOM objects are permitted, but not tested). Selector to include. If selector found, then other content will be ignored. | window.pPreview.RegExp.onlyinclude = ['.myclass', '#myid', '[data-include-me=1]'];
|
RegExp.noinclude
|
[]
|
массив строк (объекты jQuery/DOM возможны, но не тестировались). Селекторы для предпросмотра. Если подходящий элемент найден, то остальное содержимое будет проигнорировано. | window.pPreview.RegExp.noinclude = ['.myclass, #myid', '[data-exclude-me=1]'];
|
Пример[]
window.pPreview = $.extend(true, window.pPreview, {RegExp: (window.pPreview || {}).RegExp || {} });
window.pPreview.defimage = 'https://vignette.wikia.nocookie.net/borderlands/images/0/05/Ajax.gif/revision/latest/scale-to-width-down/350?cb=20170626182120&path-prefix=ru';
window.pPreview.noimage = 'https://vignette.wikia.nocookie.net/borderlands/images/f/f5/%D0%97%D0%B0%D0%B3%D0%BB%D1%83%D1%88%D0%BA%D0%B0.png/revision/latest/scale-to-width-down/200?cb=20160122074659&path-prefix=ru';
window.pPreview.tlen = 1000;
window.pPreview.RegExp.iparents = ['.myclass', '#myid', 'div[data-ignore-me=1]'];
Дополнения[]
- newpages.js
- Добавляет кнопку предпросмотра к элементам на странице Служебная:Новые страницы. Кнопка предпросмотра появится в верхнем левом углу.
Демонстрация[]
Наведите указатель мыши на ссылки:
Локализация[]
Изображение, показываемое при отсутствии изображения для предпросмотра ("нет изображения" )i может быть переведено: откройте редактор переводов на странице MediaWiki:Custom-LinkPreview/i18n.json и отредактируйте сообщение "no-image", указав полный путь к переведённому изображению. Вы можете использовать файл Linkpreview noimage en.svg для создания переведённого файла. Обратите внимание: изображение должно быть загружено на Фэндом, внешние изображения работать не будут.