3

に電話をかけようとpushStateしているが、すべての相対リンク、画像、スタイルシートなどを保持したい場合は、これまでのところ次のようにします。

$('[href]').each(function() { 
    if (!/^#/.test(this.href)) this.href = this.href;
});
$('[src]').each(function() { this.src = this.src });

私の質問は:これはクロスブラウザで動作しますか?する必要があります$(this).attr('href') = this.hrefか?

これは必要ですか?これを行う別の方法はありますか?これはそれを行うための最良の方法ですか?そして、それは常に機能するのでしょうか?

4

1 に答える 1

3

pushState現在のドキュメントの相対パスを変更します。

相対パスをどのように行うかによって、相対ソースを壊したり壊したりしないようにすることができます。

この./*パターンは現在のパスからの相対パスを実行しますが、古いプラン/*は常にパス ルートから開始され、pushState変更の影響を受けません。

./this/would/break.jpg

/this/wont.jpg
于 2012-05-03T13:41:35.230 に答える