MediaWiki:Gadget-reftooltips.js
Материал из Абсурдопедии
Перейти к навигацииПерейти к поискуЗамечание. Возможно, после сохранения вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl-F5 или Ctrl-R (⌘-R на Mac)
- Google Chrome: Нажмите Ctrl-Shift-R (⌘-Shift-R на Mac)
- Internet Explorer: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl-F5
- Opera: Перейдите в Menu → Настройки (Opera → Настройки на Mac), а затем Безопасность → Очистить историю посещений → Кэшированные изображения и файлы
/** Ref tooltips******************************************
*
* Description: Replace references with JQuery-based tooltips
* Made by: Tachikoma
*/
$(function() {
if(!($('ol.references').length)) return;
$('ol.references').before($('<a ' + 'href="#" id="showrefs">[показать примечания]</a>').click(function(e){e.preventDefault(); $('#showrefs').html( ($('ol.references').toggle().css('display') == 'none') ? "[показать примечания]" : "[скрыть примечания]" )})).hide()
$('.reference a').click(function(e) {
e.preventDefault();
var x = $(this), iscurrent = x.hasClass('curreference'), i = $('.tooltip').hide(250)
$('.curreference').removeClass('curreference');
if (iscurrent) return;
var par = x.parent(), o = par.offset(), l = o.left, t = o.top+13
var b = $('body'), mh = b.height(), mw = b.width()
var c=$(document.getElementById(x.attr('href').substr(1))).find('.reference-text').html()
x.addClass('areference').addClass('curreference')
if (!i.length) i = $('<div/>').addClass('tooltip')
i.appendTo(b).queue(function() {
i.empty().append(c).css({ 'left': l-((l+i.width() >= mw) && i.width()), 'top': t-((t+i.height() >= mh) && (i.height()+26)) }).dequeue()
}).show(250)
})
$(window).click(function(e) {
if (!($(e.target).hasClass('areference') || $(e.target).parents().addBack().hasClass('tooltip'))) {
$('.tooltip').hide(250); $('.curreference').removeClass('curreference')
}
})
})