پرش به محتوا

مدیاویکی:Gadget-goToTop.js

از امام رضا
نسخهٔ تاریخ ‏۲۲ سپتامبر ۲۰۲۵، ساعت ۱۴:۴۱ توسط *>SGimeno (WMF) (<maintenance> ReferenceError: topTop is not defined)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)

نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.

  • فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلید‌های Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-R)
  • گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-Shift-R)
  • Edge: کلید Ctrl را نگه‌دارید و روی دکمهٔ Refresh کلیک کنید، یا کلید‌های Ctrl-F5 را با هم فشار دهید
/* 
Old script documentation:
This script was given to me by ultradude25 of the Minecraft Wiki.
If adding this to your userspace, please provide attribution to the original author.
http://minecraftwiki.net/wiki/User:ultradude25/goToTop.js/
copied from[en:User:Numbermaniac/goToTop.js]
Translate & Developed By: [fa:User:MohandesWiki]

This new version is copied from a fork on enwiki found at [[:en:User:Danski454/goToTop.js]]
Original notes at the source code:
This was copied from [[User:Numbermaniac/goToTop.js]].
This script was created by Majr of the Minecraft Wiki.
The original script is available here:
http://minecraftwiki.net/User:Majr/goToTop.js
*/
$(function(){
'use strict';

$('body').append('<span id="to-top" class="noprint">▲ رفتن به ابتدا</span>');
var $topButton = $('#to-top');

$topButton.css({
	'position': 'fixed',
	'bottom': '-30px',
	'right': '4px',
	'cursor': 'pointer',
	'transition': 'bottom 0.5s',
	'-webkit-transition': 'bottom 0.5s',
	'user-select': 'none',
	'-webkit-user-select': 'none',
	'-moz-user-select': 'none',
	'-ms-user-select': 'none'
}).click(function(){
	$('html, body').animate({scrollTop: 0},'slow');
});

$(window).scroll(function(){
	var appearAt;
	switch (mw.config.get("skin")) {
		case 'minerva':
			appearAt = 100;
			break;
		case 'vector-2022':
            const tocTop = $('#mw-panel-toc').position() || {};
            const mainMenuTop = $('#vector-main-menu').position();
			if (tocTop && tocTop.top && document.getElementById('vector-toc-pinned-container'))
				appearAt = tocTop.top + $('#vector-toc-pinned-container').outerHeight(true) - $(window).height() + 20;
			else if ( mainMenuTop && mainMenuTop.top )
				appearAt = mainMenuTop.top + $('#vector-main-menu').outerHeight(true) - $(window).height() + 20;
			break;
		default:
			const tbTop = $('#p-tb').parent().position();
			if ( tbTop ) {
				appearAt = tbTop.top + $('#p-tb').parent().outerHeight(true) - $(window).height() + 20;
			}
	}
	if (appearAt < 100) {
		appearAt = 100;
	}
	if ($(window).scrollTop() > appearAt ) {
		$topButton.css('bottom', '4px');
	}else{
		$topButton.css('bottom', '-30px');
	}
});
});