jsベースのepubリーダーを週末のプロジェクトとして作成しています。画像URLから各本のページの画像のsrc属性を変更しようとしていますepub zipからロードされたデータURIに変換します。ここに私の関数です:jQuery attrでDOM文字列が変更されていない
//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;
}
返されたpageContentsのreplaceImages関数は、まだ古いsrc属性を持っています。必要に応じて詳細を提供することができますが、どんな助力も非常に高く評価されます。システムを再起動し、イリヤGへ
正解のおかげ:
function replaceImages(pageContents) {
newContent = $(pageContent);
... manip ...
return newContent;
}
'pageContents'はキャッシュされたアイテムです。返す前にリフレッシュする必要があります。 – Mottie
奇妙なキャッシングがあるようですが、返信する前にpageContentをどのように更新すればよいでしょうか? –
ああ、私は新しいコメントを見る...私は答えを追加します。 – Mottie