我不知道我在问什么是可行的。但是,无论何时我启动ajax请求,我都想向浏览器发送processing事件,以便它在选项卡中显示旋转的圆圈并调出进度条,直到请求完成。

这可能吗?如果是,您能指出我正确的资源吗?

最佳答案

无法通过编程方式使微调器动画,但是可以使用a hidden iframe模拟行为。只要加载iframe,浏览器就会为微调器设置动画。

var doneLoading = false;

var simulateLoad = function () {
    var ifrm = document.createElement('IFRAME');
    //make dummy.html a sufficiently large file
    ifrm.setAttribute('src', 'dummy.html?' + Math.floor(Math.random()*100));
    ifrm.style.display = 'none';
    ifrm.onload = function () {
        if(!doneLoading) {
            document.body.removeChild(ifrm);
            simulateLoad();
        }
    }
    document.body.appendChild(ifrm);
}

var startLoad = function () {
    doneLoading = false;
    simulateLoad();
}

var endLoad = function () {
    doneLoading = true;
}

关于javascript - 将自定义事件发送到浏览器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4622929/

10-09 22:47