firefox скачать файл в окне загрузки-расширение Firefox!


У меня есть эта функция для загрузки файла:

function downloadFile(httpLoc)
{
try {
    // new obj_URI object
    var obj_URI = Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService).newURI(httpLoc, null, null);

    // new file object
    var obj_TargetFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);

    obj_TargetFile.initWithPath("d:\te.zip");

    if(!obj_TargetFile.exists()) {
        obj_TargetFile.create(0x00,0644);
    }

    var obj_Persist = Components.classes["@mozilla.org/embedding/browser/nsWebBrowserPersist;1"].createInstance(Components.interfaces.nsIWebBrowserPersist);



    obj_Persist.progressListener = {
        onProgressChange : function(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress){
            var percentComplete = (aCurTotalProgress/aMaxTotalProgress)*100;
            var ele = document.getElementById("progress element");
            ele.innerHTML = percentComplete + "%";
        },
        onStateChange: function(aWebProgress, aRequest, aStateFlags, aStatus) {
        }
    }

    // with persist flags
    const nsIWBP = Components.interfaces.nsIWebBrowserPersist;
    const flags = nsIWBP.PERSIST_FLAGS_REPLACE_EXISTING_FILES;
    obj_Persist.persistFlags = flags | nsIWBP.PERSIST_FLAGS_FROM_CACHE;

    //save file to target
    obj_Persist.saveURI(obj_URI, null, null, null, "", obj_TargetFile);
}
catch (e) 
{
    alert(e);
}
}

Файл загружается, но я не вижу его в окне загрузки Firefox. Как сделать так, чтобы файл появился в окне загрузки и увидел ход выполнения?

1 2

1 ответ:

Это должно дать вам хороший старт на правильном пути, чтобы сделать это.