我现在多次尝试更改代码。但每次我得到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。 但这一切都没有用。
答案 0 :(得分:2)
只需将load
更改为ready
.ready()方法提供了一种在页面的文档对象模型(DOM)可以安全操作时运行JavaScript代码的方法。这通常是在用户查看或与页面交互之前执行所需任务的好时机,例如添加事件处理程序和初始化插件。当通过对此方法的连续调用添加多个函数时,它们在DOM按照添加顺序准备就绪时运行。从jQuery 3.0开始,jQuery确保在一个处理程序中发生的异常不会阻止随后添加的处理程序执行。 - https://api.jquery.com/ready/
所以这是一个有效的演示https://jsfiddle.net/e89gh5Lk/