• ベストアンサー

テキストエリアのイベント

天才プログラマーの皆様。JavaScript、jQuery テキストエリアのコンテキストメニューによる貼り付け・切り取りイベントを取得(実行された時の処理を設定)したいです。 ツイッターのツイートの文字数は、右クリックによる貼り付け・切り取りにも反応して文字数をカウントしています。 このサイトはできていないようですが、、 setTimeoutでずっとカウントしてればいいですが、ブラウザに負担が大 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • f1204-okw
  • ベストアンサー率84% (16/19)
回答No.2

input イベントを使うとよいでしょう。 oninput = listener でも addEventListener('input', listener) でも望みの挙動は実現されるはずです。 ただし IE の対応は 9 以降となります。 古い IE にも対応しようとすると、contextmenu イベントを使うほかないと考えられます。

noname#191561
質問者

お礼

天才 掛け値なしの本物です。

noname#191561
質問者

補足

自分の検索スキルがないせいで、 どのようにして情報を得るのかが分かっていません。 情報を手に入れる経路を教えてもらえないでしょうか? よろしくお願いします。

その他の回答 (2)

  • f1204-okw
  • ベストアンサー率84% (16/19)
回答No.3

情報入手の入口は Google 検索です。 検索のコツは『検索 コツ』とでも検索して学んでください。 JavaScript に関する情報に限って言えば、Mozilla Developer Network (MDN) を良く利用しています。 プログラミング専門の Q&A サイト Stack Overflow の過去ログも役に立ちます。 あとは Web デザイナやプログラマのブログです。 MDN は日本語に未翻訳の部分が多く、Stack Overflow は完全に英語のみです。 ブログも、海外のもののほうが数で勝るため情報源が豊富です(もちろん日本のブログにもすばらしいものがたくさんあります)。 日本語の情報に限って探すのではなく、英語を加えて使うのがおすすめです。

回答No.1

onChangeイベントで 文字数を最大文字数と比較 多いなら自身のテキストエリアから文字列を取得して超過分をカット カットした文字列をテキストエリアに入れ直す 多くないなら何もしない でどうでしょうか?

noname#191561
質問者

お礼

早速のご回答ありがとうございます。 onChangeは、テキストエリア<textarea id="tw"></textarea> では、フォーカスが外れた時に実行されるようです。 入力中は、イベントが発生しないです><

関連するQ&A