我试图编写一个脚本,通过使用 JavaScript 为我“单击”这些键,在这个在线键盘上“播放”一些键。
编码
//sample array to iterate over
var keys_ = ['et', 'dst', 'et', 'dst', 'et', 'b', 'dt', 'ct', 'a', ...];
//handles the clicking only
function playKey(id_) {
key_ = document.getElementById(id_);
key_.click(); }
//iterates over the array
function playKeys(keys_) {
delay = 1000;
for (i = 0; i < keys_.length; i++) {
console.log(delay);
key_ = keys_[i];
console.log(key_);
window.setTimeout('playKey(key_)', delay);
delay += 1000;
}
}
输出
控制台抛出以下错误:
1000
et
2000
dst
...
9000 未定义
的 未捕获类型错误:无法读取 null p-ano.html:142 的属性“样式”:142 8 未捕获类型错误:无法调用 null 的方法“点击”
如您所见,delay
和key_
值是完全正确的。但是当我执行此操作时,在一秒钟后(即第一次超时),所有键似乎都同时播放,然后什么也没有发生。
我究竟做错了什么?
PS:我看到过类似的其他问题并搜索了谷歌和其他论坛,无济于事