【发布时间】:2016-08-29 05:04:29
【问题描述】:
工具:JQuery、Node.js、Electron、Windows
使用 JQuery,我附加了一个在“drop”事件上执行的函数。
area.on("drop", {"extensionHandler":extensionHandler, "dropHandler":dropHandler}, onDragDrop).bind(this);
function onDragDrop(evt){
if( !isValidDragDrop(evt) )
return;
loading.show(); <----- THIS LINE is the problem
var validExtension = evt.data.extensionHandler;
var fileListHandler = evt.data.dropHandler;
var filesDragged = evt.dataTransfer.files.length;
//Treat dragged files
//....
// more code....
loading.hide();
};
在所有文件都完成并结束之前,loading.show() 行不会被执行。它应该使 gif(加载器)可见,因此用户不会认为应用程序在处理他们拖过来的 20 多个文件时出现问题。想法是,这就像在整个函数完成之前不会执行该行,因为 gif 永远不会显示。如果我做console.log() 会发生同样的事情。首先处理所有文件,然后出现日志。我很茫然。
谢谢。
【问题讨论】: