javascript - AJAX URL 追加与存储的 jQuery .data() 冲突

标签 javascript jquery debugging variables reference

我有一个 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 排序时,我想我会丢失 window 引用,因为以下事件处理程序在访问时返回 undefined未附加 URL 时访问不会出现问题的数据。我知道这一定是事件处理程序中的 window 引用问题,有人可以指出我引用 window 的正确方法,以便 jQuery 对象在其中数据存储在加载时可以通过 .on( 'hover', function() {//do stuff }); 访问,而 URL 是为 AJAX 附加的?

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

最佳答案

对于这个特定问题,我意识到唯一的方法是将数据存储在 jQuery .data 中。 $(window).element.on( 'hover', ...){} 上的函数访问 View 初始化的属性.

关于javascript - AJAX URL 追加与存储的 jQuery .data() 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11942556/

相关文章:

java - 将控制台与 Eclipse 中的源代码链接

ios - EXC_BAD_ACCESS 指向函数头

javascript - 如何向 div 的所有子节点和这些 div 的数组添加事件监听器?

javascript - Asp 打印按钮

php - 是否有 PHP 版本的 zxcvbn.js 或者我可以在服务器端使用它来强制执行密码规则的方法?

jquery - jquery 上的文本更改 :ischecked

node.js - 使用 Node 调试 WebAssembly

javascript - 可点击下拉菜单中的可点击 Font Awesome 图标

javascript - 如何打开/关闭 $(document).click() 事件或其他解决方案

javascript - jQuery - 如何为我的函数添加淡入/淡出效果,而不仅仅是设置可见性隐藏/可见