タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

jQueryとeventに関するn2sのブックマーク (13)

  • 特定の要素以外で発生したイベントをキャッチする(jQuery Advent Calendar 2014 jQuery) - ksk1015のブログ

    jQuery Advent Calendar 2014 の6日目の記事です。 空いていたので書きます。 特定の要素で発生したイベントで処理行う場合は と書きます。普通ですね。 特定の要素以外で発生したイベントで処理行う場合は、こんなふうに書けます 解説 documentにイベントリスナー貼ると、どこでイベントが発生してもキャッチできます。 (バブリングするイベントの場合ですが。 イベントバブリングについて解説した記事) そしてイベントオブジェクトからイベント発生元の要素を取得できます。 その要素自体またはその要素が指定セレクタ内かどうかは、.closest()メソッドで簡単に判定できます。 ドロップダウンメニューみたいなUIの閉じる処理、それ以外がクリックされたときは閉じたいけど、操作不能にはしたくないときとかで使ったりします。 調べてみたらjQueryUIのSelectmenuも同じふう

    特定の要素以外で発生したイベントをキャッチする(jQuery Advent Calendar 2014 jQuery) - ksk1015のブログ
  • preventDefault()で無効にしたイベントを有効にする方法

    preventDefault()で無効にしたイベントを有効にする方法を紹介します。 1.はじめに preventDefault()は、「preventDefault()について」で紹介したとおり、実行したイベントがキャンセル可能である場合、イベントをキャンセルするためのメソッドです。 が、preventDefault()でイベントキャンセルしたあと、再びイベントを有効にする方法が分かりません。 ということで、preventDefault()で無効にしたイベントを有効にする方法について紹介します。 2.jQueryを使ってpreventDefault()で無効にしたリンクを有効にする ここではa要素を使って、preventDefault()で無効にしたリンク先への遷移を再び有効にするサンプルを用います。 jQueryでは、preventDefault()メソッドをon()とoff()と組み合

  • jQuery の.on()をもういっぺん理解してみる - あまり新しくないもの

    jQueryのイベントハンドリングには、現在 .on(),.off()のみが推奨されて利用されています。 その基的な使い方はこんなかんじでした。 $(element).on(event, function() { console.log('event fired!'); }); この場合、対象となる$(element)において指定したeventが発火した時に、コールバック関数が呼び出されます。非常に直感的ですね。 ところで、これは以前の.bind()と全く同じです。 .bind()の場合は、指定したずばりその要素に対してのみ、イベントハンドリングを行います。よって、.bind()が呼び出されたその時点で存在しない要素に対しては、たとえセレクタが一致していたとしてもハンドリングが行われません。 このことを利用すれば、イベントハンドリングをしたいまさにその要素にのみ、たとえその後同じセレクタ

    jQuery の.on()をもういっぺん理解してみる - あまり新しくないもの
    n2s
    n2s 2014/05/16
    個人的に本題はnamespaceの方
  • ページを移動(離脱)するときにjQueryで警告を出す方法

    Facebookなどでフォーム入力中にページを移動(離脱)しようとすると警告が表示されます。 この仕組みをjQueryで実装する方法を紹介します。jQueryは投稿時点の最新バージョン1.9.1を利用しています。 1.ページを移動するときに警告を出す ページを移動するときに警告を出すには、onイベントにbeforeunloadイベントを設定します。 <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script> $(function(){ $(window).on('beforeunload', function() { return '投稿が完了していません。このまま移動しますか?'; }); }); </script> <form method="post" acti

    n2s
    n2s 2013/03/11
    beforeunloadイベント / 重箱の隅ですが、.on()と.change()、.click()が混ざってるのは個人的に見てて落ち着かない…
  • http://www.machu.jp/posts/20130211/p01/

  • jQueryコードリーディング: bind(),live(),delegate() - &lt;s&gt;gnarl,&lt;/s&gt;技術メモ”’&lt;marquee&gt;&lt;textarea&gt;¥

    おはようございます。コードリーディング第四回です。 jQueryには、特定のエレメントにイベントを割り当てるメソッドとしてbind,live,delegateが存在します。今回は、これらのメソッドの実装を追ってみたいと思います。 対象 jQuery 1.5.0 これまでのエントリ 配列、each 初期化、extend セレクタを渡した場合の処理 はじめに bind,live,delegateそれぞれの公式リファレンスは以下です。 http://api.jquery.com/bind/ http://api.jquery.com/live/ http://api.jquery.com/delegate/ また、それぞれのメソッドの違いを解説したエントリは以下です The Difference Between jQuery's .bind(), .live(), and .delegate()

    jQueryコードリーディング: bind(),live(),delegate() - &lt;s&gt;gnarl,&lt;/s&gt;技術メモ”’&lt;marquee&gt;&lt;textarea&gt;¥
  • Post by @0-9

    jQueryにはイベント制御のAPIとして、clickやmouseoverの元になるbindの他に、同じような呼び出し方のliveやdelegateが提供されている。 bindはDOM APIで提供されているaddEventListenerのwrapperだが、liveは以下のような実装になっている。 1. 第一引数のイベント名でdocument objectにlive用のイベントハンドラーをbindする 2. 1で設定したイベントハンドラー内でdocument object内に存在する要素上で発生したイベントを全てキャッチする ・イベントの発生元要素がbind時に設定されたセレクタに一致する場合、第二引数に指定されたユーザーのイベントハンドラーを呼び出す これはもともと「多量の要素に対してbindするとUIをロックしてしまう」という問題の対策として知られていた手法だが、liveはそれをj

    Post by @0-9
    n2s
    n2s 2013/01/06
    via id:entry:40965226 / on()は内部でやってることは変わらないのかな?
  • jQuery入門講座 使い方-デリゲートとon

    索引 ├ 使い方 目次 └ バグノート(1) 1章:jQuery入門 ├ jQueryのメリット ├ readyイベント ├ オブジェクトについて ├ メソッドについて ├ 情報の取得 ├ イベント(1) ├ イベント(2) └ 初歩なサンプル 2章:jQuery基礎 ├ thisについて(1) ├ thisについて(2) ├ jQueryとDOM要素 ├ 簡単な演出 ├ thisから辿る ├ 汎用的なアニメ(1) ├ 汎用的なアニメ(2) ├ アニメの停止 ├ アニメを管理する仕組み └ 汎用的なアニメ(3) 3章:jQuery発展 ├ イベントフロー(1) ├ イベントフロー(2) ├ イベントフロー(3) ├ 画像のプリロード ├ jQueryの高速化 └ メソッドチェーン 番外編:研究 ├ イベントを外す ├ cssアニメとの連携(1) ├ cssアニメとの連携(2) ├ css

    jQuery入門講座 使い方-デリゲートとon
  • Sign in - Google Accounts

    Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode

    n2s
    n2s 2012/12/06
    JSとjQuery両方のイベント処理について勉強しないと
  • jQueryの.bind(), .live(), .delegate()の違い

    The Difference Between jQuery’s .bind(), .live(), and .delegate() - Alfa Jango Blog http://www.alfajango.com/blog/the-difference-between-jquerys-bind-live-and-delegate/ jQueryの.bind(), .live(), .delegate()違いや仕組みの理解、また.delegate()の方が.live()より優れている理由について書かれています。 内容を簡単に書き出すと以下のようなことについて書かれています。 $('a').bind('click', function() { alert("That tickles!") }); .bind()は$(‘a’)に対してイベントを設定してる。 $('a').live('clic

    jQueryの.bind(), .live(), .delegate()の違い
    n2s
    n2s 2012/12/06
    まだon/offがなかった頃の記事かな。on/offについては追記でid:entry:61416126を紹介。
  • jQueryのbind/live/delegateの違いまとめ、と新API .on()の使い方 - y-kawazの日記

    jQueryのイベント記述方法はいくつかあり、大雑把におさらいしたのが以下の3パターンです。 まず一番基的なのが $("a").click(fn) や $("a").bind('click', fn) です。click(fn)はbind('click', fn)の省略形です。 次にjQuery1.3で $("a").live("click", fn) という機能が出来ました。liveの良いところはDOM操作で出たり消えたりするエレメントに対して再バインド無しでイベント定義ができる利便性と、内部的にはbind個所がdocumentの1か所になり複数個所へのbindが無くなることによるメモリ効率と実効速度の向上です。 更にjQuery1.4.2で $("#foo").delegate("a", "click", fn) という書き方が出来るようになりました。これは特定要素以下に限定するliv

    jQueryのbind/live/delegateの違いまとめ、と新API .on()の使い方 - y-kawazの日記
    n2s
    n2s 2012/12/06
    bind, live, delegate→on
  • jQueryのバブリングと、「return false;」「e.stopPropagation();」「e.preventDefault();」について

    jQueryのバブリングと、「return false;」「e.stopPropagation();」「e.preventDefault();」についてTweet どうも(o´ω`o)ノ 今年もあと10週間ですねー。 今日はjQueryの、イベントのバブリングについてです。 バブリングの「バブル」は泡です。たぶん。 jQueryはHTMLで書かれた要素(DOM)を、以下のようにツリー形式で持っています。 そして、一番下のA要素をクリックすると、それが一番親のwindowまで伝わります。 これがイベントのバブリング(「伝達」とでも言うのかな)です。 クリックイベントは、例え自分がクリックされていなくても、子孫要素がクリックされれば発動します。 イベントは子供から順番に起きます。 よくAタグの「href="#"」を無効にするために、Aタグのクリックイベントの最後で 「return false;

  • preventDefault() and stopPropagation() - higeorange's blog

    jQuery でイベントの伝播を止めたり、デフォルトの動作を殺したりするには element.click(function(evt) { evt.preventDefault(); evt.stopPropagation(); alert('hoge'); }); のように書くんだけどこれは, IE の event.returnValue = false; と event.cancelBubble = true; もやってくれるのね。 そりゃそうだよな。同じ名前だからやってくれてないのかと一瞬思った。

    preventDefault() and stopPropagation() - higeorange's blog
  • 1