为什么我的 JavaScript `animate` 函数在 Chrome 中不起作用,但在 IE 中起作用?
JS 函数 animate 在 Chrome 中不起作用,但在 IE 中起作用
提供的 JavaScript 函数 animate 在 Chrome 中不起作用,但在 Internet Explorer 中按预期运行。为了解决这个问题,有必要深入研究使用事件处理程序内容属性时出现的约束和潜在冲突。
问题的症结源于 Element.prototype 对全局函数 window.animate 的遮蔽.动画。 Web 动画中引入的这个新功能扩展了 Element 接口,通过以下方式直接在元素上启用动画:
elem.animate({ color: 'red' }, 2000);
使用内容属性处理事件时,目标元素的范围将覆盖全局范围。因此,您的函数名称 animate 与新方法 Element.animate 冲突。
要解决此问题,有两种可能的方法:
- 重命名您的函数:
通过更改函数名称,可以避免与元素.原型.动画。例如,您可以使用:
function animate__() { var div = document.getElementById('demo'); div.style.left = "200px"; div.style.color = "red"; }
- 使用 apply 方法:
或者,您可以使用 apply 方法显式指定动画函数的正确范围。如果您需要维护名称 animate,此方法特别有用。
按如下方式修改代码:
document.getElementById('demo').onclick = function() { animate.apply(document.getElementById('demo')); };
当全局 animate 函数被触发时,此行将正确的作用域应用于您的全局 animate 函数onclick 事件。
以上是为什么我的 JavaScript `animate` 函数在 Chrome 中不起作用,但在 IE 中起作用?的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

在本周的平台新闻综述中,Chrome引入了一个用于加载的新属性,Web开发人员的可访问性规范以及BBC Move

文档负责人可能不是网站上最迷人的部分,但是其中所处的内容对于您的网站的成功也一样重要

有很多分析平台可帮助您跟踪网站上的访问者和使用数据。也许最著名的是Google Analytics(广泛使用)
