Mitsukiの魔法実験室

Mitsuki's Magic Laboratory
Since 2002.09.14

2007/10/18

Posted at 2007/10/18 17:45 in Diary|Opera

* 13:15 近況とか
 一応生きてる。

* 17:45 Delay アクションで JavaScript 有効期間を制限する
 Opera9.5 から Delay アクションが追加されてたのをふと思い出して、これ使えば「普段は JavaScript OFF にしてて、ブックマークレット実行時だけ ON にして、また OFF に戻す」ボタンが作れるのに今更気づいた(ただのブックマークではアクション実行できないので無理)。以下はうちの standard_toolbar (1).ini より抜粋:


Button7, "+HBM"=Enable javascript & Delay, 100 & Go to page, "javascript:window.open('http://b.hatena.ne.jp/add?mode=confirm&is_bm=1&title='+escape(document.title)+'&url='+escape(location.href), '_blank', 'width=520,height=600,resizable=1,scrollbars=1');undefined;" & Delay, 100 & Disable javascript
Button8, "+LDR"=Enable javascript & Delay, 100 & Go to page, "javascript:location.href='http://reader.livedoor.com/subscribe/'+location.href", 1 & Delay, 100 & Disable javascript

 単に「JavaScript有効化→100ms 待ち→ブックマークレット実行→100ms 待ち→JavaScript無効化」という処理をしてる。b.hatena.ne.jp とか reader.livedoor.com は Site Preference でドメインごと JavaScript を ON にしてあるので、Go to page アクションの直後に JavaScript が OFF になっても問題はない……というのがミソかな。なので、alert 表示するようなブックマークレットだと微妙。