Hide Arch Wiki Sidebar

Hides the sidebar on the Arch Linux wiki. The sidebar can be toggled with a button.

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name        Hide Arch Wiki Sidebar
// @description Hides the sidebar on the Arch Linux wiki. The sidebar can be toggled with a button.
// @version     0.1.4
// @require     https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js
// @include     http://wiki.archlinux.org/*
// @include     https://wiki.archlinux.org/*
// @grant       none
// @namespace   https://greasyfork.org/users/13329
// ==/UserScript==

// make a "show sidebar" button mimicing the "watch" button
var watch_button = $('li#ca-nstab-main').parent().find('li:last')
var sidebar_button = watch_button.clone();

// change the duplicated "watch" button link to have the properties we want for
// the "show sidebar" button
var sidebar_toggle = sidebar_button.find('a')
	.text('show sidebar')
	.unbind('click')
	.removeAttr('href')
	.attr('id', 'ca-toggle-sidebar')
	.attr('accesskey', 'i')
	.attr('title', 'Toggle the sidebar [Alt+Shift+i]');

// put the new "show sidebar" button after the "watch" button
sidebar_button.insertAfter(watch_button);

var sidebar = $('div#column-one').find('div:gt(3)');
var content = $('div#content');
var original_margin = content.css('margin-left');

// toggle_sidebar shows or hides the sidebar, updating the "show sidebar"
// button link text to match
function toggle_sidebar() {
	if (sidebar.is(':visible')) {
		sidebar_toggle.text('show sidebar');
		sidebar.hide();
		content.css('margin-left', '0px');
	} else {
		sidebar_toggle.text('hide sidebar');
		sidebar.show();
		content.css('margin-left', original_margin);
	}
}

// bind the toggle_sidebar function to the "show sidebar" button link
sidebar_toggle.click(toggle_sidebar);

// sidebar is hidden by default
toggle_sidebar();