素人がプログラミングを勉強していたブログ

プログラミング、セキュリティ、英語、Webなどのブログ since 2008

連絡先: twitter: @javascripter にどうぞ。

2008-05-02から1日間の記事一覧

Firebugの$xや$$を使っていろいろ作ってるとGreasemonkeyにしようと思ったときに書き直さなきゃいけなくなって困る

Firebugには便利な関数があって、要素を簡単に特定できたりする。Greasemonkeyにはそんな関数はないので、Greasemonkeyスクリプトにしようと思ったときに困る。便利な関数っていうのはXPath指定すると配列で結果が返ってくる$xや、CSS Selectorで指定できる$…

CSSセレクタにマッチする正規表現

失敗作。作戦練らずにやってたら対応しきれなくなった。下記は残骸。 'div[id*="google"] > .myclass:before span:not([style])'.match(/[\.#]?(?:\w+|\*)(?:\[\s*\w+(?:\s*[~\^\$\*\|]?\s*=\s*"?.*?"?\])?)?(?:\s*\:\s*?[\w-]+(?:\s*\((?:\s*\:\s*\w+)?(?:\…

はてなスターを全部展開するブックマークレット

javascript:var starInners=document.getElementsByClassName('hatena-star-inner-count');Array.forEach(starInners,function(starInner){var evnt=document.createEvent('MouseEvents');evnt.initMouseEvent('click',false,true,document.defaultView,1,0,…

メソッドをフックする

はてブでreturnがなくなってるという指摘があったのでそれを修正した。 var Hook=function(){ var old; this.addHook=function(obj,method,before,after){ old=obj[method]; obj[method]=function(){ before&&before.apply(this,arguments); var ret=old.app…

細かいブックマークレットいろいろ

別名を、Array.forEachいろいろとも呼ぶ。disabledになってるものを有効にする javascript:Array.forEach(document.getElementsByTagName('*'),function(n)n.disabled=0) 全てのチェックをはずす javascript:Array.forEach(document.getElementsByTagName('*…

はてなハイクにログアウトボタンをつけるGreasemonkey

右上のメニュー部の微妙なスペースにログアウトのリンクを押し込むGreasemonkey。 // ==UserScript== // @name addLogoutLink // @namespace http://d.hatena.ne.jp/javascripter/ // @include http://h.hatena.ne.jp/* // ==/UserScript== var gmenu=docume…

Array#someを改造する

Array#someは途中でループを抜けるときに便利なんだけど、(配列を走査するときに、途中でループを抜けるにはsomeが使える - 0xFFで知った)戻り値がtrueかfalseなので、最初にヒットしたものを取り出すときとかには使えない。こうすればできる。 Array.prot…

wedataの情報を元にページのコンテンツ部をリロードするGreasemonkey

AutoPagerizeのjsonを使ってAjaxな感じにオートリロードする。 適用するサイトは手動で追加。はてなハイクとTwitterで一応確認。このスクリプトを入れると左上にアイコンが出るから、オートリロードしたくなったらクリック。とめたくなったらまたクリック。…