「Greasemonkey」の編集履歴(バックアップ)一覧はこちら
「Greasemonkey」(2009/01/23 (金) 14:07:51) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
*[[Greasemonkey>https://addons.mozilla.org/ja/firefox/addon/748]]
-[[ページ内のリンクを一時的に無効にする>http://www42.atwiki.jp/inouework?cmd=upload&act=open&pageid=22&file=gm_Link_Invalidity.user.js]]
--リンクの有効/無効の切り替え:Ctrl + Shift
// ==UserScript==
// @name Link_Invalidity
// @namespace Link_Invalidity
// @include *
// ==/UserScript==
var ahref = new Array();
var mbSwitch = false;
function a_href_chenge(){
if( mbSwitch == false){
a_href_off();
mbSwitch = true;
}else{
a_href_on();
mbSwitch = false;
}
}
/**
* リンクエレメント無効
* 全リンクのナビゲーション値を保存
* リンクタグ(「A」)のオブジェクトを全取得し
* ナビゲーション属性(「href」)を削除する
*/
function a_href_off(){
// リンクパスを保存
gethref();
var aobj = document.getElementsByTagName( 'A');
for( i = 0; aobj.length > i; i++){
aobj[i].removeAttribute( 'href');
}
//document.forms[0].elements[0].disabled = true;
//document.forms[0].elements[1].disabled = false;
}
/**
* リンクエレメント有効
* リンクタグ(「A」)のオブジェクトを全取得し
* ナビゲーション属性(「href」)を設定する
* 値は保存しておいた値を使用する
*/
function a_href_on(){
var aobj = document.getElementsByTagName( 'A');
for( i = 0; aobj.length > i; i++){
aobj[i].setAttribute( 'href', ahref[i]);
}
//document.forms[0].elements[0].disabled = false;
//document.forms[0].elements[1].disabled = true;
}
/**
* 全リンクエレメントのナビゲーション値を一時保存
* リンクタグ(「A」)のオブジェクトを全取得し
* ナビゲーション属性(「href」)の値を配列に設定する
*/
function gethref(){
if( ahref.length <= 0){
var aobj = document.getElementsByTagName( 'A');
for( i = 0; aobj.length > i; i++){
ahref[i] = aobj[i].getAttribute( 'href');
}
}
}
/**
* documentに対するkeydownイベントの処理設定をする。
* 第1引数でキーを指定し、
* 第2引数で指定されたキーが押し下げられたときに実行する関数を指定する。
* ただし、INPUT要素、TEXTAREA要素に対するキーイベントの場合は何もしない。
*/
var keybind = ( function(){
function add ( phrase, func){
if( phrase instanceof Array){
phrase.forEach( function( p){
add( p, func);
});
} else {
document.addEventListener( "keydown", function( event){
var tagName = event.target.tagName;
if( phrase == code( event) && !tagName.match(/(INPUT|TEXTAREA)/i)){
func();
event.preventDefault();
event.stopPropagation();
}
}, true);
}
}
function code( event){
var code = [];
if( event.shiftKey){
code.push("SHIFT");
}
if( event.ctrlKey){
code.push("CTRL");
}
if( event.altKey || event.metaKey){
code.push("ALT");
}
var vkey = kc2char( event.keyCode);
if( vkey != ""){
code.push( kc2char( event.keyCode));
}
GM_log( code.join( "-"));
return code.join( "-");
function kc2char( kc){
function between( a, b){
return a <= kc && kc <= b;
}
var _32_40 = "space pageup pagedown end home left up right down".split(" ");
var kt = {
8 : "backspace",
9 : "tab" ,
13 : "enter",
16 : "",
17 : "",
27 : "escape",
46 : "delete",
59 : ":",
107 : ";",
109 : "-",
188 : ",",
190 : ".",
191 : "/",
192 : "@",
219 : "[",
220 : "\\",
221 : "]",
222 : "^",
226 : "\\",
};
//16 : "shift",
//17 : "control",
return ( between( 65, 90) ? String.fromCharCode( kc + 32) : // a-z
between( 48, 57) ? String.fromCharCode( kc) : // 0-9
between( 96, 105) ? String.fromCharCode( kc - 48) : // num 0-9
between( 32, 40) ? _32_40[kc-32] :
kt.hasOwnProperty( kc) ? kt[kc] :
kc);
}
}
return add;
})();
keybind( "SHIFT-CTRL", a_href_chenge);
*[[Greasemonkey>https://addons.mozilla.org/ja/firefox/addon/748]]
-[[ページ内のリンクを一時的に無効にする>gm_Link_Invalidity]]
--リンクの有効/無効の切り替え:Ctrl + Shift
表示オプション
横に並べて表示:
変化行の前後のみ表示: