我在IE 11中收到此错误:
Object doesn't support property or method 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());
});
});
Run Code Online (Sandbox Code Playgroud)
Vis*_*ioN 11
Number.isNaN
这是一项实验技术,是Harmony(EcmaScript 6)提案的一部分.由于此技术的规范尚未稳定,请检查兼容性表以了解各种浏览器的用法.另请注意,随着规范的变化,实验技术的语法和行为可能会在未来版本的浏览器中发生变化.
大多数浏览器(包括IE11)仍然不支持它.
您应该使用标准isNaN方法:
if (isNaN( parseFloat(this.value) )) { ... }
Run Code Online (Sandbox Code Playgroud)
如果您将ES6与Babel一起使用在React中。您可以这样:
// pollyfills for older browsers
// core-js v2.x.x:
import 'core-js/es6/number';
// core-js v3.x.x:
import 'core-js/es/number';
Run Code Online (Sandbox Code Playgroud)
在package.json中添加依赖项以
"dependencies": {
"core-js": "^2.5.5",
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6150 次 |
| 最近记录: |