我在IE 11中遇到了这个错误:
对象不支持isNaN属性或方法
JavaScript
对象不支持isNaN属性或方法
JavaScript
jQuery(document).ready(function($) {
var $total = $('#total'),
$value = $('.value');
$firstName = $('#firstname');
$lastName = $('#lastname');
$tour = $('#tour');
$pledge = $('#pledge');
$currency = $('#currency');
$distance = $('#distance');
$riders = $('#riders');
$(':input').on('input change', function(e) {
var total = 1;
$value.each(function(index, elem) {
if(!Number.isNaN(parseFloat(this.value)))
total = total * parseFloat(this.value);
});
$total.val(total/10);
$('#pledgefirstname').text($firstName.val());
$('#pledgelastname').text($lastName.val());
$('#pledgetour').text($tour.val());
$('#pledgepledge').text($pledge.val());
$('#pledgecurrency').text($currency.val());
$('#pledgecurrency2').text($currency.val());
$('#pledgecurrency3').text($currency.val());
$('#pledgecurrency4').text($currency.val());
$('#pledgetotal').text($total.val());
$('#pledgetotal2').text($total.val());
$('#pledgedistance').text($distance.val());
$('#pledgeriders').text($riders.val());
});
});
isNaN
方法,而不是从Number
对象中调用它:if (isNaN(...))
。 - VisioNwindow.isNaN
和Number.isNaN()
。我认为后者是 EcmaScript 6 的一个特性。 - JohanNumber.isNaN
是下一个JavaScript规范非常新的、仍处于实验阶段的功能。它在IE中根本不受支持。你可能将其与全局的isNaN
函数混淆了,后者在所有浏览器中都有支持。 - ajp15243