【问题标题】:jQuery Get Value of data AttributejQuery获取数据属性的值
【发布时间】:2017-03-19 08:36:25
【问题描述】:

我现在尝试了几次更改代码。但是每次我得到 NaN ...

$(window).load(function() {
    $('.ytdl').click(function() {
        var v = $(this).data('href');
        var f = $(this).data('format');

        alert(v + f);

    });
});


<a data-href="KMU0tzLwhbE" data-format="1" rel="nofollow" target="_blank" class="ytdl">Download</a>

但是为什么呢?我已经尝试将数据更改为 attr。 但这些都不起作用。

【问题讨论】:

  • 这完全按计划工作 - 将其加载到代码 sn-p 中并尝试一下 - 其他地方一定有其他事情发生

标签: jquery


【解决方案1】:

只需将load 更改为ready

.ready() 方法提供了一种在页面的文档对象模型 (DOM) 变得可以安全操作时立即运行 JavaScript 代码的方法。这通常是在用户查看或与页面交互之前执行所需任务的好时机,例如添加事件处理程序和初始化插件。当通过对该方法的连续调用添加多个函数时,它们会在 DOM 准备好时按照添加顺序运行。从 jQuery 3.0 开始,jQuery 确保在一个处理程序中发生的异常不会阻止随后添加的处理程序执行。 -- https://api.jquery.com/ready/

所以这是一个工作演示 https://jsfiddle.net/e89gh5Lk/

  • document.ready 是一个 jQuery 事件,它在 DOM 准备好时运行,例如所有元素都可以找到/使用,但不一定是所有内容。
  • window.onload 稍后会在加载图像等时触发(或者在最坏/失败的情况下同时触发),因此如果您使用图像尺寸,例如,您通常希望使用它。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-01-27
  • 2014-06-28
  • 2023-03-22
  • 2015-04-25
  • 1970-01-01
  • 1970-01-01
  • 2014-02-13
相关资源
最近更新 更多