2012-10-20 47 views
1

我正在使用https://github.com/augustl/js-epub解析一個.epub文件,但我得到的錯誤爲「XML解析錯誤:找不到元素」。我沒有問題,直到第3步,它在後處理失敗step.I使用下面的代碼epub解析使用epub.js

 $(document).ready(function(){ 
    $('#something').html('fetching'); 
    $.ajax({ 
    url: "alice.epub", 
    complete: function(response, status, request) { 
    var the_zip = new JSUnzip(response.responseText); 
    $('#something').html('finished with ' + status); 
    console.log("is it zip?" + the_zip.isZipFile()); 
    var epub = new JSEpub(response.responseText); 
    epub.processInSteps(function (step, extras) { 
    var msg = ''; 
    console.log(step); 
    if (step === 1) { 
    msg = "Unzipping"; 

    } else if (step === 2) { 

    msg = "Uncompressing " + extras; 

    } 
    else if (step === 3) { 
    msg = "Reading OPS"; 
    } 
    else if (step === 4) { 
    msg = "Post processing"; 
    alert(msg); 
    } 
    else if (step === 5) { 
    msg = "Finishing"; 
    alert('done!'); 
    } 
    else { 
    msg = "Error!"; 
    } 
    $('#something').html(msg); 

    }); 

    } 
    }); 
    }); 

請問誰能告訴我上面的代碼中的錯誤。

+0

您是否嘗試過在js-epub頁面上給出Base64編碼XHTTP傳輸的建議? – HBP

+0

我試過你的建議,但我在js-unzip.js中出錯,它在step1本身失敗。 – user969275

+0

聽起來就像在處理之前沒有從Base64解碼 – HBP

回答

2

您是否嘗試過js-epub的驗證功能?

var vali = epub.validate(); 

如果某些值爲「未定義」,您的控制檯現在應引發異常;

順便說一下..在檢查js-epub.js代碼時 - 第15行(充氣)上有一個「新」標籤丟失....也許這可以解決您的問題。

編輯:如果你解決了這個問題,將很高興分享答案。