首页 > 解决方案 > 如何将箭头功能更改为在 Internet Explorer 中工作的正常功能?

问题描述

我在 chrome 和 firefox 上使用以下代码。

它工作得很好,但由于 javascript 中有两个箭头函数,动画在 Internet Explorer 上不起作用。

我应该如何将它们写成 javascript 中的普通函数?

提前致谢

你可以在这里找到一个演示 https://jsfiddle.net/80vr25zf/

const counters = document.querySelectorAll('.evyt_.h-counter');    
counters.forEach(counter => {
const updateCount = () => {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;   

标签: javascriptarrow-functions

解决方案


根据此页面http://kangax.github.io/compat-table/es6/,IE 11 中未实现 ES6 功能(包括箭头和匿名函数)。

所以你应该使用 ES5 支持的经典函数声明(因此是 Internet Explorer)

您的代码将如下所示:

const counters = document.querySelectorAll('.evyt_.h-counter');    
counters.forEach(function counterFunction(counter) {
const updateCount = function updateCode() {
const target = +counter.getAttribute('data-target');
const count = +counter.innerText;  }} 

推荐阅读