人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Greasemonkeyスクリプトの質問です。
ペーストしたテキストから指定キーワードを削除するスクリプトを作りたいのですが。

トラビアンの戦闘ログを以下サイトで管理しています。

http://travian-reports.net/jp/

ゲームのページから以下のログをコピーし、

件名: aaがbbを攻撃しました
送信: 日付: 今日 時間: 05:28:15 時
攻撃者 AA 所有の村から来た aa
ファランクスソードマンパスファインダーシューテイタス・サンダードルイドライダーヘジュアンラムトレブシェ首領開拓者
兵士0450000001600
死傷0000000000
情報トレブシェ 農耕地は破壊されました。
略奪資源
木0 | 粘土0 | 鉄0 | 穀物00
運搬0/20250
*文字数の問題で省略

これをペーストしても上記サイトでうまく解析してくれません。
「所有の村から来た」を「所有の」に変更するとうまくいきます。

というわけで、エディットボックスにペーストしたとき、
「村から来た」を削除するGreasemonkeyスクリプトを作りたいのです。

スクリプトのサンプル、もしくはそのものを作ってもらえませんでしょうか。

●質問者: かえる
●カテゴリ:コンピュータ インターネット
✍キーワード:00 28 AA BB Greasemonkey
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Cherenkov
●100ポイント ベストアンサー

どうでしょうか。

var textarea = document.querySelector("#mainleft textarea");
if(!textarea) return;
textarea.addEventListener("keyup", editText, false);
textarea.addEventListener("mouseup", editText, false);
textarea.addEventListener("change", editText, false);

function editText(){
 this.value = this.value.replace(/所有の村から来た/g,"所有の");
}
◎質問者からの返答

回答をオープンするのが遅くなってしまい、申し訳ありませんでした。

インストールして試してみましたが、まだうまく動かせていません。

インストールの注意点など、なにかご存じのことがあれば教えていただけると嬉しいです。

"#mainleft textarea"という部分がありますが、これは#付きはidを、#なしはhtmlのタグを表しているのでしょうか?

また、スペースで区切ることにより、子要素を階層的に指定できるのでしょうか?

例えば指定ページのhtmlだと、

の外側に
がありますので、

"#maincont #mainleft textarea"と記述しても同様の結果が得られると言うことでしょうか?

また、replace(/所有の村から来た/g,"所有の");ですが、カンマの前がダブルクォーテーションではなくスラッシュで、

最後にgがついていますが、これは全ての「所有の村から来た」を置換することを指定しているのでしょうか?

以上、また質問となってしまいましたが、よろしくお願いします。


2 ● po11
●0ポイント

http://travian-reports.net/jp/

◎質問者からの返答

こちらはどういう意味でしょうか?

このページ内に、なにか適切な説明が書いてあるのでしょうか?ちょっと見つけられていませんが。

今回の質問は、問題を解決したいだけでなく、GreaseMonkeyのスクリプトを勉強する目的もありました。

説明が不十分で申し訳ありません。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ