私は同様のスレッドを調べて、そこで提案されたすべてを試しましたが、役に立ちませんでした。
新しい場所を取得したら、ページの src 属性を変更して、ページが読み込まれた後に画像を置き換えようとしています。画像をローカル画像に置き換えたい。
img.src = urlString;を介して src 属性を直接変更します。またはsetAttribute()メソッドを使用すると、src が設定されますが、読み込まれたページで画像が再描画されません。window.alert(img.src);を使用しました。src 属性が実際に変更されていることを確認します。
ここから次のコード スニペットを使用して、再描画を強制しました。
var n = document.createTextNode(' ');
var disp = img.style.display;
img.appendChild(n);
img.style.display = 'none';
img.style.display = disp;
n.parentNode.removeChild(n);
何も機能していないようです。ページが読み込まれているためですか、それともローカル ファイルを使用しているからですか?
ローカル ファイルは%AppData%\tempにあります。これは権限の問題でしょうか? ブラウザ コンソールはエラーをスローしません。誰かがフォームに入力している可能性があり、データが失われる可能性があるため、ページ全体を更新したくありません。
任意の入力をいただければ幸いです。ありがとう。
編集:少し説明。拡張機能を使用して、すべてのウィンドウにスクリプトを挿入します。ウィンドウがページをロードしたら、処理のために画像を別のスクリプトに送信します。スクリプトは、新しいファイルの場所を含むイベントをウィンドウに返します。イベントがキャッチされると、特定のイメージの src 属性を変更する関数が呼び出されます。すべてを確認しました。src は変更されていますが、ブラウザに新しい画像が表示されません。
別の編集: file:///pathtofile/を使用してアドレスバーからファイルにアクセスできるため、アクセス許可の問題はないようです。外部 URL (例: http:// ) を使用すると、ページの読み込み後でも機能するようです。ローカル URL で動作させるにはどうすればよいですか?