私は週末のプロジェクトとしてjsベースのepubリーダーを作成しており、本の各ページの画像のsrc属性を画像のURLからepubzipから読み込まれたデータURIに変更しようとしています。これが私の関数です:
//page contents is just an html string of the book's page
pageContents = GlobalZipLoader.load('epub.zip://' + pageLocation);
pageContents = replaceImages(pageContents)
...
function replaceImages(pageContents){
$(pageContents).find('img').each(function(){
var domImage = $(this);
//this is something like ".../Images/img.jpg"
var imageLocation = domImage.attr('src');
//this returns the proper data-uri representation of the image
var dataUri = GlobalZipLoader.loadImage('epub.zip://' + imageLocation);
//this doesn't seem to "stick"
domImage.attr('src', dataUri);
});
return pageContents;
}
replaceImages関数から返されたpageContentsには、まだ古いsrc属性があります。必要に応じて詳細を提供できますが、ご協力いただければ幸いです。
システム再起動とIliaGのおかげで正解:
function replaceImages(pageContents) {
newContent = $(pageContent);
... manip ...
return newContent;
}