ポップアップ辞書をバージョンアップ(1.10)

利用者から報告のあった、変数の宣言漏れによるidとの衝突とテキスト配置がページ内のスタイルシートに影響を受ける部分を修正した。他、ページ内でスクリプトを実行させる手法の変更で、変数汚染の低減などを図った。 不具合の修正は ページ内にid:jscript…

フルスクリーン時に標準ツールバーが消えない仕様への対処

今作ってるスクリプトがあんまり面白くない部分を記述している最中なので息抜きに。標準ツールバーを消せるわけではないが、前提条件をクリアしてる人なら試す価値はあるかもしれない。 実際にやることは単純、使ってるスキンの設定ファイルを弄ってボタンの…

ポップアップ辞書をバージョンアップ(1.01)

使っているうちにいくつか気になる点が出てきたのと、利用者のコメントよりJavaScriptオフ時にアウトプットにエラーを吐くことが発覚したので修正した。ついでに製作中セクションから出して独立させておいた。 修正したのは マウスオーバータイプの時たまに…

findTextでフリーズするページがわかったのでテスト

一言(2007年01月〜02月) - Donut食った?に、フリーズするページの例があった。テラ目が節穴ス。 テストしたらcloneNodeだと文字通りそのまま複製してて不整合が解消して無いらしい。cloneNodeしたbody要素でのfindTextでもフリーズする。うすうす予想して…

Sleipnir:みなさんのIEPanelの使い方を教えてください

Browser.js 【TB企画 2】Sleipnir:みなさんのIEPanelの使い方を教えてください ということなので今有効にしてあるIEPanelがないけど一応書いてみる。 サイトを表示させる 利用法としてはもっともオードソックスな部類に入る。例として、http://menu.2ch.net…

クロージャを使ってISleipnirにアクセスする

8日の記事でIHTMLWindow2にISleipnirを渡すのは危ないよってなことを ISleipnirを渡すSeaHorseスクリプトを不特定多数のサイトで使うのはだめですね。いたずらでいきなり全タブを閉じるとかされたりするかも。 griffin-stewieの日記 - セキュリティ の前半IS…

IHTMLWindow2にSleipnirScriptのインターフェースオブジェクトを渡す

SaveTextAreaやポップアップ辞書で利用している小技の話。SaveTextArea作ってた頃のmixiの日記読んでる人はわかってると思うけど正直やってる本人が何やってるか良くわかってないので説明するは気が進まないのだけど、解説、というか現時点での認識を書き散…

ポップアップ辞書をver1に

↑というわけでラボにあるポップアップ辞書を表示位置と非表示にするタイミングの調整、取得した単語がデータベースに無い場合はポップアップしないなどの調整を行ったものに修正しておいた。 ついでにテキストも少し見やすく成形してみた。あと気になる点は…

moveToPointとexpand

マウスオーバー辞書を作ろうとして、マウス直下の単語を取得する為にTextRangeをマウス直下の要素まで移動させて1単語ずつ移動させつつ座標を比較して...なんてことをやっていて、なんでboundingLeftとかboundingTopが読み取り専用なんだと嘆いていたが、mov…

ハイライト

ラボでやってるGoogle詰め合わせ、AutoPager用のハイライト関数の話。findTextを完全に使わないのは無理がありそうでしばらく放置してたけど、さっきプリンに生クリームを載せることの是非について考察している最中に閃いたので早速試してみた。findTextのバ…

マウスオーバーじゃないけど辞書

マウスオーバーで単語を検出、訳語をポップアップするのは大分ストレスなく動くようになってきた。デメリットを考慮しても無いよりは在った方が便利な段階までは着てると思う。ただ、単語数が多いと検出がもたつくし、後半の単語まで検出を待てるようにする*…

SeaHorse1.1.1リリース

昨日リリースいたしました SeaHorse 1.1.0 に問題があり SeaHorse 1.1.1 をリリースさせていただきました。大変ご迷惑をお掛けいたしました。今回は複数のスクリプトが同時に実行されるようなケースで1つのスクリプトしか実行されない問題と判断しましたので…

SeaHorse 1.1.0

Sleipnirの定番プラグイン、SeaHorseが1.1.0にアップデートされた。個人的にはSleipnirの真髄はUserActionにこそあると思っているが、恐らく一番人気のあるプラグインがSeaHorseではないかと思う。 SeaHorse 1.1.0 の更新履歴[仕様変更]●JavaScript を使った…

マウスオーバー辞書の叩き台

一応一通りの機能を実装したのでマウスオーバー辞書を動かしてみたSSを。データなしだとどうせ使えないのでまだラボにも置いてないが、単語の取得と翻訳、ポップアップの表示を行ってるコア部分のソースはこんな感じ。 function transWord(e) { if (e.wheelD…

マウスオーバー辞書について考える

IE、ないしFxでGoogleツールバーを利用するとWebサイト内の英単語にマウスを当てたときに、その単語の意味をポップアップ表示してくれるようになる。ツールバー自体の機能はどうでもよいようなものばかり*1なのでツールバーを使いたい、とは思わないが、この…

A.hrefが化ける件

アンカータグのhref属性を取得するとかってにアンエスケープしてしまうっぽいので大雑把ながら対策をすることにした。 function getHref(a) { result = a.outerHTML.match(/href="([.]+\/)*(.*)"/)[2]; result = a.href.replace(unescape(result), result); …

マウス直下の要素取得2

もしかして、と思って確認したらやっぱり座標の取得がfireEvent実行時だからExtendedMenuとか*1から呼び出そうとすると凄く使いづらい、というか実質役に立たない。 こういうところはMenuが表示された時点でイベントが停止するAddMousePosの方式のほうが優れ…

マウス直下の要素取得

昨日の日記からさらに発展して _document.body.attachEvent("onmousemove", function(e) {x = e.x; y = e.y}); _document.body.fireEvent("onmousemove"); alert(x + " " + y); みたいにした。別にわざわざデタッチしなくてもスクリプト終了時に勝手に消えて…

マウスポジション

ラボでやってるAddMousePos関係は、SeaHorseを使ってマウスポジションをページの変数に代入してUserActionから参照できるようにしておき、elementFromPointでマウス座標から要素を割り出すようにしている。 座標から要素を得るのがうまく行かないページもあ…

アカウントとったので

はてなブックマーカーが思ったより便利だったので、自分でブックマークできるようにアカウントを取ってみた。以前はてなアンテナを利用していた時期があるので正確には復帰になるか。本格的に利用するかはわからないが、せっかくだしダイアリーもためしに使…