2008/03/06

Opera Mobile 8.65以降でのブックマークレットの扱いについて

Opera Mobile 8.65以降ではブックマークレットが使えない。
代わりにURLバーを検索バーとして使える機能があるが、キーワードを覚えておかないと使えないという問題がある。
というより、そもそもこれはブックマークレットではない。
代用になる方法を3つ紹介する。

代わりとなるページを使う方法
要するに、HTMLにJavaScriptを書くだけ。
通称ブックマークレットもどき。
いちいちファイルを用意しなくても、短いURLであれば以下のようなURLをブックマークに追加すれば良い。
data:text/html;charset=utf-8,HTMLの内容
ブックマークレットの要である「そのページに対して何らかの操作をする」ということはできず、せいぜいフォームを生成するくらいの事しかできない。

検索バーに仕込む方法
「代わりとなるページを使う方法」と併用し、任意の文字列を引数として渡してページを開く方法。
実質的にはURLを渡すために使う。
例えばhttp://a.b.c/の時に先頭にaaa と入力してアクセスすれば、キーワードaaaに引数http://a.b.c/を渡して検索を実行する。
このaaaがブックマークレットもどきであるなら、そこにURLを渡す事が出来る。

User JavaScriptを使う方法
OperaにはUser JavaScriptという機能があり、ページを読み込んだ時点で必ずJavaScriptを実行できる。
これを利用し、何らかの操作でそのJavaScriptの機能を呼び出せるようにすれば、間接的にブックマークレットを使う事が可能である。
具体的には通称owmmenuを使う。
これを書いた時点での最新版は2007/10/09版
*キーにブックマークレットランチャ機能を割り当てている。

代用にならない方法
Opera.exeの引数にブックマークレットを指定すると、新規タブを開いてブックマークレットを実行する。
確かにブックマークレットは実行されるが、ブックマークレットの要である「そのページに対して何らかの操作をする」ということはできず、これでは「代わりとなるページを使う方法」の劣化版にしかならない。
しかもOperaからの直接的な呼び出しができず、キーに割り当てたりするしかない。

0 件のコメント: