میڈیاویکی:Gadget-MultiLevelMenu.js

تفصیل کے لیے کھولیں کے بٹن پر کلک کریں یاددہانی: محفوظ کرنے کے بعد تازہ ترین تبدیلیوں کو دیکھنے کے لیے آپ کو اپنے براؤزر کا کیش صاف کرنا ہوگا۔

  • فائرفاکس/ سفاری: جب Reload پر کلک کریں تو Shift دبا کر رکھیں، یا Ctrl-F5 یا Ctrl-R دبائیں (Mac پر R- )
  • گوگل کروم: Ctrl-Shift-R دبائیں (Mac پر Shift-R-⌘)
  • انٹرنیٹ ایکسپلورر: جب Refresh پر کلک کریں تو Ctrl یا Ctrl-F5 دبائیں
  • اوپیرا: Tools → Preferences میں جائیں اور کیش صاف کریں

/**
 * [[سانچہ:افقی قائمہ]]
 * 
 * بذریعہ [[میڈیاویکی:Gadget-content-support-loader.js]]
*/ 

var arrowimages = {
	down: ["downarrowclass", "//upload.wikimedia.org/wikipedia/commons/f/f1/MediaWiki_Vector_skin_action_arrow.svg", 10],
	left: ["leftarrowclass", "//upload.wikimedia.org/wikipedia/commons/8/8e/MediaWiki_Vector_skin_left_arrow.svg"]
};
var jqueryslidemenu = {
	animateduration: {
		over: 300,
		out: 300
	},
	buildmenu: function (menuid, arrowsvar) {
		jQuery(document).ready(function ($) {
			var $mainmenu = $("#" + menuid + ">ul");
			var $headers = $mainmenu.find("ul").parent();
			$headers.each(function (i) {
				var $curobj = $(this);
				var $subul = $(this).find("ul:eq(0)");
				this._dimensions = {
					w: this.offsetWidth,
					h: this.offsetHeight,
					subulw: $subul.outerWidth(),
					subulh: $subul.outerHeight()
				};
				this.istopheader = $curobj.parents("ul").length == 1 ? true : false;
				$subul.css({
					top: this.istopheader ? this._dimensions.h + "px" : 0
				});
				$curobj.children("a:eq(0)").css(this.istopheader ? {
					paddingLeft: arrowsvar.down[2]
				} : {}).append('<img src="' + (this.istopheader ? arrowsvar.down[1] : arrowsvar.left[1]) + '" class="' + (this.istopheader ? arrowsvar.down[0] : arrowsvar.left[0]) + '" style="border:0;" />');
				$curobj.hover(function (e) {
					var $targetul = $(this).children("ul:eq(0)");
					this._offsets = {
						right: $(this).offset().right,
						top: $(this).offset().top
					};
					var menuright = this.istopheader ? 0 : this._dimensions.w;
					menuright = (this._offsets.right + menuright + this._dimensions.subulw > $(window).width()) ? (this.istopheader ? -this._dimensions.subulw + this._dimensions.w : -this._dimensions.w) : menuright;
					if ($targetul.queue().length <= 1) {
						$targetul.css({
							right: menuright + "px",
							width: this._dimensions.subulw + "px"
						}).slideDown(jqueryslidemenu.animateduration.over)
					}
				}, function (e) {
					var $targetul = $(this).children("ul:eq(0)");
					$targetul.slideUp(jqueryslidemenu.animateduration.out)
				});
				$curobj.click(function () {
					$(this).children("ul:eq(0)").hide()
				})
			});
			$mainmenu.find("ul").css({
				display: "none",
				visibility: "visible"
			})
		})
	}
};
jqueryslidemenu.buildmenu("myslidemenu", arrowimages);