![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
>prototype.に定義しているのは、何か理由
documentがつかめればなんでもいいんです
一義的にdocumentがHTMLDocumentなのでそれを利用しました。
場合によってはprototypeではなく直接メソッドを作成することも可能です
機能拡張はprototypeで行えば同じレベルの要素については
同じ挙動をするようになるので便利です
たとえば、NodeListやHTMLCollectionなど
ありがとうございます。てっきりprototype.に定義するのは、業界の掟のようなものかと思っていました。とても勉強になりました。こういったのは、購入した書籍にのっていないので、感謝します。
No.2
- 回答日時:
たとえばこんな感じでどうでしょう?
<script>
HTMLDocument.prototype.addEventsListener=function(x,y,z){
var doc=this;
Array.prototype.map.call(x,function(i){
doc.addEventListener(i,y,z);
},doc);
}
document.addEventsListener(['click','keydown'],function(e){
console.log(e.type);
});
</script>
自作ですね。すごいですね。ありがとうございます。
console.dir(HTMLDocument);で確認しましたが、prototype.に定義しているのは、何か理由があるのでしょうか?
No.1
- 回答日時:
こんにちは
一つの要素に一つのリスナー設定のようです。
https://developer.mozilla.org/ja/docs/Web/API/Ev …
どうしても複数同時に設定なさりたいのであれば、自作するしかないでしょう。
DOMElement.addEventListeners(types, listener [, useCapture])
のような考えで、設定時にはtypesを分解して設定するようにしておけばよいのでは?
types.split(",").map(function(t){
element.addEventlistener(t, listener, useCapture);
});
みたいな感じでしょうか。
まぁ、こんなことしなくても、記述のしようはあると思いますけれど・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript addEventListener()でリスナー関数に名前を付ける構文を教えてください 1 2023/07/01 17:31
- Word(ワード) ワードの文字数行数設定をフォーマットにして切り替えたいです 2 2022/05/24 10:42
- 教えて!goo 「教えて!goo」の機能として、 任意に語句を設定することにより、質問や回答の表示制限ができる機能が 7 2022/09/04 07:20
- Excel(エクセル) エクセルについて教えてください。 一度入力した文字や数字を誤って削除や変更しないために、削除や変更を 3 2022/10/30 10:36
- Excel(エクセル) エクセルにおいてセル内の文字を出来るだけ大きく表示する方法を教えてください。 4 2022/07/30 08:08
- 文学・小説 富士見ノベル大賞とビーンズ文庫大賞に応募しようと思うのですが、その時は、賞の規定通りの文字数行数に設 1 2023/05/22 18:48
- Excel(エクセル) 【Excel】複数シートがあるエクセルデータで片面印刷と両面印刷設定がシートごとに入 1 2023/03/10 15:25
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
- 電車・路線・地下鉄 JR東日本のえきねっとチケットレス割引について ある特急電車が、A駅から途中B駅に停車して、C駅まで 3 2023/04/13 07:37
- Excel(エクセル) Excelの入力規則にいれる関数について 7 2022/12/22 10:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
functionから別のfunctionを実...
-
JAVAスクリプトで指定時間以降...
-
関数でy=g(x)のgとは何の略です...
-
シューティングゲームの作り方
-
idを使わずにonclickで自身の要...
-
jQueryの"return false"の役割...
-
クリックすると上に開くアコー...
-
関数の中の値を取り出したい
-
マウスをのせてながら、2秒後に...
-
同じIDで定義した要素の配列を...
-
<a>タグのテキストを取得
-
C#OpenCv V4にのエラーに関する...
-
GASでundefinedエラーが出ます
-
C#テキストボックスの文字を配...
-
window.openでタイトル名の指定
-
ActiveXobjectが作成できない
-
クリッカブルマップのリンク部...
-
undefinedを表示させない方法は...
-
Vb.netのグローバル変数の宣言...
-
googleスプレッドシートのApps ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数でy=g(x)のgとは何の略です...
-
idを使わずにonclickで自身の要...
-
functionから別のfunctionを実...
-
jslintのエラーについて質問
-
要素名がスペースを含む場合のj...
-
javascript(jQuery)でセル内...
-
ajax反映後のjqueryが動かない
-
jQueryの :not() .not() が有効...
-
getElementByIdを使用したグロ...
-
コードをスマートにさせたい。
-
クリックすると上に開くアコー...
-
jQueryの"return false"の役割...
-
jQueryが読み込めない
-
個別では動く、javascriptのエラー
-
一つのアクションで関数を二つ...
-
jqueryの変数を関数の外に出す方法
-
R言語
-
jQuery|:not(:animated)
-
即時関数でプライベート変数的...
-
スムーズに動く アニメーション...
おすすめ情報