質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

1回答

779閲覧

jQueryで名前空間を複数のイベントにつけたいとき

massuguda

総合スコア23

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2019/02/20 17:31

PJAXでのページ遷移のためにイベントを削除するにあたって、一括して削除したいです。
そのときイベント登録時に同じ名前空間をつけておけば一括で削除できると考えました。

そこで名前空間の正しい使い方について知りたいです。
お詳し方がいらっしゃいましたら、ご指導どうぞ宜しくお願い致します。

###ご質問したいこと
まず「input」や「keyup」に、名前空間「pjax」をつけるとしたらこうであっていますよね?

jQuery

1// イベントをそれぞれ登録する 2$(document).on("input.pjax","#target1", function(){ 3 alert('target1'); 4}); 5$(document).on("keyup.pjax","#target2", function(){ 6 alert('target2'); 7}); 8 9// イベントを一括して削除する 10var arr = [ #target1, #target2 ] 11$(document).off("pjax", arr); 12

ではご質問ですが、下記のように「input keyup」など複数あるときでは、名前空間「pjax」はどのようにつけるべきでしょうか?
そしてその一括した削除方法とはどのような書き方になりますでしょうか?

jQuery

1$(document).on("input keyup","#target3", function(){ 2 alert('target3'); 3}); 4

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

間違っています。

js

1// $(document).off("pjax", arr); 2// ↓ 3 $(document).off(".pjax", arr);

【.off() | jQuery API Documentation】
http://api.jquery.com/off/#example-4


下記のように「input keyup」など複数あるとき

名前空間はイベントごとに指定では。

投稿2019/02/20 17:52

kei344

総合スコア69364

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

massuguda

2019/02/20 18:08

ドットでしたね。すみません、ありがとうございます。 イベントごとに指定というと、 $(document).on("input.pjax keyup.pjax","#target3", function(){ alert('target3'); }); という書き方でよろしいでしょうか? まぁできればいい話だろと言われてしまいそうですが、正しい書き方なのかが不安です。
kei344

2019/02/20 18:15

手元に環境があるなら、まず試してください。確かめていないから不安なだけです。
massuguda

2019/02/20 18:39 編集

ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問