Bru*_*dit 7 javascript jquery dom
我live()在下面的jquery中有一个函数:
$("#qandatbl td.weight input").live("change", calculateTotal);
function calculateTotal()
{
var totalweight = hundred;
$("#qandatbl td.weight input").each(function (i, elm){
totalweight = totalweight - parseInt($(elm).val(), 10);
});
$("#total-weight").text(totalweight).append('%').css('font-weight', 'bold');
}
Run Code Online (Sandbox Code Playgroud)
现在有人说这个live()功能正在逐渐消失,最好使用这个on()功能.如果这是真的,那么如何将上面的代码更改为on()函数而不是live()函数?重要的是我不使用live()或不是真的那么重要吗?
根据文件:
根据其后继者重写.live()方法很简单; 这些是用于所有三种事件附件方法的等效调用的模板:
Run Code Online (Sandbox Code Playgroud)$(selector).live(events, data, handler); // jQuery 1.3+ $(document).delegate(selector, events, data, handler); // jQuery 1.4.3+ $(document).on(events, selector, data, handler); // jQuery 1.7+
所以在你的情况下,如果你使用jQuery 1.7+,它将是:
$(document).on('change', '#qandatbl td.weight input', calculateTotal);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
284 次 |
| 最近记录: |