開発中はCSSファイルのキャッシュを無効化しておきたい。
特にiOSのブラウザでは、PCのスーパーキャッシュクリア「Cmd + Shift + R」が使えないので、キャッシュが残ると非常に不便だ。
今回、サーバーの仕様によりPHPを使えない環境で、JSを使ってCSSのキャッシュを無効化したので、その方法をメモしておく。
<script>
var ts = (new Date()).getTime();
document.write('<link rel="stylesheet" href="./css/styles.css?ver='+ts+'">');
</script>
CSSを読み込むHTMLファイル内に上記のJavaScriptを追記する。
JSでCSS読み込みタグを追加しているので、既存のlinkタグはコメントアウトしておこう。
これでアクセスするたびに現在時刻をリンクURLにパラメーターとして付加するので、常に最新版のCSSファイルが読み込まれる。