如果我在HTML文件中放置一些脚本来改变动画播放状态,它就可以工作。但是当我把脚本放在脚本文件中时,它不起作用。任何人都可以告诉我为什么? 像这样的脚本:
var buttons=document.getElementsByTagName("button");
for(var i=0;i<buttons.length;i++) {
console.log(buttons.length);
buttons[i].onclick=function(e) {
document.getElementById("para")
.style.WebkitAnimationPlayState=e.target.innerHTML;
};
}
答案 0 :(得分:1)
可能未在document
中定义元素。尝试将现有脚本放在load
window
事件处理程序中
function toggleAnimationPlayState() {
var buttons=document.getElementsByTagName("button");
for(var i=0;i<buttons.length;i++) {
console.log(buttons.length);
buttons[i].onclick=function(e) {
document.getElementById("para")
.style.WebkitAnimationPlayState=e.target.innerHTML;
};
}
}
window.addEventListener("load", toggleAnimationPlayState);
答案 1 :(得分:1)
您的脚本取决于此Button的现有内容:
=document.getElementsByTagName("button");
所以,
可行,因为渲染按钮后脚本一直在运行。
它不起作用,因为:
OR
按照此顺序。
<button>....</button>
.......
<script src="/uri/of/script.js"></script>
onload
window
列表器中运行您的代码