Javascriptの最近のブログ記事

自宅でNASに突っ込んだものを、出先で参照するのに、サブドメイン切って制限かけたページを使ってるのだが、

indexs そのままでは殺風景なので何かデザインをつけたかった。

 

h5ai はちょっと重いので何かないかなーと相談していたら mapi 先生が apache-autoindex-theme というのを見付けてくれた。

適用してみたが 軽いし 見た目もそれっぽくていい感じ。

最近 Firefox から一部のサイト利用時のみ Google Chrome を使うようになりました。

livedoor reader も その1つなんですが、kuyさんの『LDR Ad-Entry Blocker』を始め、chrome でお勧め!みたいに紹介されていた『LDR prefav』も動いていなかった...

どっかの段階で chrome 側の仕様が変わったのかなぁ、とソースを見てみた所 unsafeWindow すら sandbox 内のものになる為、サイト側の作っているオブジェクトに触れなくなってる模様。

LDR のエントリを操作するタイプの user.js はLDR.register_hook を使っている為全滅してるみたい...

 

イベントをフックする所が問題なんだから、定期的に監視するみたいな感じで出来るんじゃないかなーと思ったけど、既に素晴しい user.js があるのに、いちいち新しいコードを書くのは面倒だなーと思って、悪足掻きしてみたら動いた。

Amazonの商品ページで使うと、任意のアソシエイトIDを付与(置換)してリロードするブックマークレットつくったよー。


javascript:void(function(){aid='tyorotxt-22';if(!/^https?:\/\/(?:www\.)?amazon\.(?:co\.jp|jp)\/(.+)$/.test(window.location)){a='';}else{var%20path=RegExp.$1;var%20paths=path.split('/');if(paths[0].toLowerCase()=='exec'){paths=paths.slice(1);}if(paths.length<=1||paths[1]==''){a='';}else{switch(paths[0]){case'OBIDOS':case'obidos':case'o':if(paths[1].toLowerCase()=='asin'&&paths.length>=3&&paths[2]!=''){a=paths[2];}else%20if(/^isbn(?:=|%253d)(.+)$/i.test(paths[1])){a=RegExp.$1;}else%20if(paths[1].toLowerCase()=='tg'&&paths.length>=5&&paths[2].toLowerCase()=='detail'&&paths[3]=='-'){if(/^[0-9a-zA-Z]{10}$/.test(paths[4])){a=paths[4];}else%20if(paths.length>=6&&paths[5]!=''){a=paths[5];}}break;case'gp':if(/^gp\/product(?:\/product-description)?\/([0-9a-zA-Z]{10})/.test(path)){a=RegExp.$1;}else%20if(/^gp\/aw\/d\.html\/.*?&a=([0-9a-zA-Z]{10})/.test(path)){a=RegExp.$1;}break;default:if(/\/?dp(?:\/product-description)?\/([0-9a-zA-Z]{10})/.test(path)){a=RegExp.$1;}}}}if(a){window.location='http://www.amazon.co.jp/exec/obidos/ASIN/'+a+'/'+aid;}})()



デフォルトで俺のアソシエイトID(tyorotxt-22)が埋まっているので、付与させたい人のIDに置き換えて使ってね。

このまま使うと僕のおこずかいになります。

ありがとう、ありがとう。


こっちもよろしく

Amazon アソシエイトIDを任意のIDに上書きするuser.jsを改造した


何か挙動の意味が分からない上にweb上に情報がないので、一応書いとく。
再現が自分の所でしかしないかと言えばそーゆーわけでもなく、今回は人から相談を受けてこの現象にブツかった。

ってか以前に会社で作業してた時にブツかってどうしても原因が分からなくて保留になってた項目でもあった。
ほんと何なのこれ。
誰か解決案しりませんか。

今回は内容が内容だけに、割と質問数が少なくて黙々と読んでた印象。

9時スタートだったのだけど、大阪駅やら会場周辺やらで迷ったのもあって到着は1時間半ほど遅刻でした。

電車で読みながら移動してたのもあって、問題無く参加出来たけど、遅刻していくと準備とか手伝えなくてマズいなぁ(n'ω'`)

演算子の挙動とかと違って、この辺は書いてある事を理解すればそれで終わりって感じだったのであまり質問が出なかった。
なので読みながらメモった事を主に書いとく。

多分yuisekiのブクマから辿りついたんだと思うけど、hetapiさんのISBNを検出するグリモンを知った。

いろんなサイトから ISBN を抽出するグリモンのテスト - へたっぴ日記

なんか面白そうなのとXPathを書ける所かな、と思って米欄のotsuneさんの

ISBNがあるWebページの一覧を書いておくと「空欄を埋めないと気持ち悪いマニア」が手を出す可能性 link


に乗っかって、ブコメで空欄埋めたいとか叫んでたら編集されてたので試してみた。

Operaの開発補助ツールであるOpera Dragonflyの使い方の日本語版が公式から出てます。

Opera Dragonfly 入門 (Japanese) - Opera Developer Community

普段operaでブラウジングしながらも、開発時のデバッグにはFireFox使ってる身としてはかなりwktkだったのですが、最近気力がゼロだったので、英語の解説読まずに放置してたので、日本語化してくれて助かった( ´-`)

土曜日に開催されたRoppongi.JS#1に参加しました。
内容はjQueryのコードリーディングです。

WEB参加型のJS勉強会という事だったのですが、ちょっと関東での用事と被ったのもあって、移動時間的な問題もあって主催者であるHolyGrailの家に押しかけて参加しました。
急遽の事だったのに、快く受け入れてくれてほんとありがとう!
WEB参加型の醍醐味的な所は味わえてないのかもだけど、かなり楽しく参加させていただきましたよ!

以下、今回勉強した事のまとめ。

読書会のエントリで式と文の所で例を挙げながら少し書いたけど、もう少し書きたいと思ったので改めて。

前回のエントリ内では4種類のfunctionを使った例を書いていましたが、それに関してminkeさんからコメントをいただいたので、もう少し考えてみることにしました。

function式を直接呼び出す時は「(function a(){alert(2);})();」と書くと良いということです。

@os0x作の『はてなスターに連射ボタンをつけるBookmarklet』がはてなスター側の仕様変更で動作しなくなっているようなので修正してみた。

はてスタ連射

FireFoxであれば、↑のリンクをリンクバー等にD&Dすれば登録できます。
なお↑のリンクを直接クリックしていただければ、このページ内で試すことができます。

動作テストはFireFoxでしか行っていません。
IEでは動かないけど、mattnさんがIEでも動くようにしてくれまスター

修正内容については以下。

2013年11月

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

月別 アーカイブ

2013年
2012年
2011年
2010年
2009年
2008年
2007年