spiritlooseのはてなダイアリー このページをアンテナに追加 RSSフィード

2007-02-26

[] JavaScriptでの独自右クリックメニューライブラリ作った


さて、たまにはJavaScriptでも。


JavaScriptで独自の右クリックメニューを簡単に使うライブラリ作った。

http://spiritloose.net/misc/popupmenu/


デザインはlivedoor Readerから頂きました。

var popup = new PopupMenu();
popup.add('メニューに表示するテキスト', function(target){ // なんか処理 });
popup.addSeparator(); // セパレータ追加
popup.bind('targetElement');
popup.bind(); // document がターゲット

こんな感じで使える。

jsファイルひとつでよくて、メニューのHTML書く必要はない。スクリプトのみでOK。

CSSファイルとか、他のライブラリとかも不要。

その分デザイン変えるためにはソースいじらないとだめだけど。

(あと、設計をSwingのJPopupMenuみたいにしようとしたけど、無駄なのでやめた)


なんでこんなもん作ったかって言うと、Webアプリはそろそろ独自右クリックメニューは許されてもいいかなぁと思ったので。


その辺のサイトでやられるとやっぱり結構うざいけど、キーを設定してるサイト/アプリは最近たくさんあるので、右クリックもそろそろ許されるといいかなぁと。


例えば、Gmailショートカットキーを使うと非常に便利に使えるんだけど、リストのアイテムに右クリックメニューがあって、そこからぽちぽち返信とかラベルつけたりとか、アーカイブとか出来たらそれなりにクライアントアプリっぽくつかえるかなぁと思った。


あと、こんなこととか。


f:id:spiritloose:20070226115321p:image


Firebugでちょちょっと捏造してみただけで、購読停止以外動きません。


oncontextmenuっていうと、return falseだけ設定している訳わからんサイトとかで印象よろしくない時代が続いたので、再評価されたらいいかなぁと。

まじめに使えば結構便利だと思う。


oncontextmenu がきちんと仕様にのる日はくるのかなぁ。こないだろうなぁ。


追記

↑とか書いたら今朝似たようなライブラリが紹介されてた。

http://phpspot.org/blog/archives/2007/02/javascriptright.html

なんか使い方よくワカンネ。


他に作ってるときに見つけたのはこんなのとか。

http://www.dhtmlgoodies.com/scripts/context-menu/context-menu.html

これもめんどくさそう。


追記2

続き書きました。

MuneMune 2007/03/17 02:12 popupmenu.jsを使わせて頂いております。
レイアウトを少々改変させてもらいました。
問題がございましたらどうぞご連絡ください。
ありがとうございます。
http://www.ritl.biz/windmap/wiki/wiki.cgi

testalltestall 2010/08/09 05:31 popupmenu.jsを使わせてもらっているものです。
font-sizeを0.8emに、z-Indexを100000000にして使わせていただいてます。
http://cjhat.ath.cx/

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証