1

document.readyのポップオーバーに備えて、すべてのデータを保存する関数があります:hover

domReady( function() {
  $('.foo').each( function() {
    var el = $(this);
    var el_content = el.find('[data-content]');
    el.data( 'content-attr', { content: el_content, classes: el_classes } );
  } );
} );

デフォルトではすべて正常に動作しますが、URLがAJAXソートに追加されると、URLが追加されていない場合に問題なくアクセスされるデータにアクセスするwindowと、次のイベントハンドラーが返されるため、参照が失われます。これはイベントハンドラーの参照の問題であるundefined必要があることを認識しています。URLがAJAXに追加されている間、データがロード時に保存されるjQueryオブジェクトにアクセスできるように、誰かが正しい参照方法を教えてもらえますか?windowwindow.on( 'hover', function() { //do stuff });

$( window ).on( 'hover', '[rel="popover"]', function() {
    var el = $(this);
    var this_content_data = el.data( 'content-attr' ).content;
    function() {
      // do stuff
    }
} );
4

1 に答える 1

0

この特定の問題の場合、これを行う唯一の方法は、.data上の関数によるアクセスのためにビューの初期化時にjQuery属性にデータを格納することであることに気付きました$(window).element.on( 'hover', ...){}

于 2012-09-04T21:01:28.143 に答える