我试图在函数启动时隐藏按钮并显示一些文本,然后在函数完成时隐藏文本并重新显示按钮。
我很难做到这一点,因为 JavaScript 的工作方式是,在整个函数完成之前,它不会向屏幕输出任何内容;因此,我尝试做的是行不通的。
我尝试在“onclick”命令上使用两个不同的函数,但这产生了相同的结果。
任何对 JavaScript 有更多了解的人都可以告诉我如何实现我在这里尝试做的事情吗?
编辑:尝试了以下建议的代码:
function addCatsSIC2() {
var addBtnWrapper = document.getElementById('addBtnWrapper');
var addWait = document.getElementById('addWait');
addBtnWrapper.style.display = 'none';
addWait.style.display = 'block';
setTimeout(function(){
addCatsSIC();
}, 10);
addWait.style.display = 'none';
addBtnWrapper.style.display = 'block';
}
没用。唯一不同的是,我点击的按钮在功能完成之前不会“保持按下状态”。
最佳答案
试试这个
// disable the button
setTimeout(function(){
// do your actions
// re-enable the button
}, 10);
这应该给 Action 一个完成的机会,DOM Action 将生效,然后超时函数将执行。 JS 没有线程,但这可能会达到类似的效果。
关于javascript - 让 JavaScript 命令在函数完成之前运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5525899/