01 April 2013

meta 要素の `http-equiv="refresh"` はページロードが完了した時点から指定した秒数待ってリダイレクトする

4 The elements of HTML — HTML Standard

For the purposes of the previous paragraph, a refresh is said to have come due as soon as the later of the following two conditions occurs:

  • At least time seconds have elapsed since the document has completely loaded, adjusted to take into account user or user agent preferences.

ドキュメントが completely loaded されて, かつ指定した時間経ったあとに遷移するとある.

completely loaded の定義はここだけど

12.2.6 The end — HTML Standard

もろもろのステップの一番最後ということのようだ.

リダイレクト時にビーコンを飛ばしたり js を実行させるような場合, http-equiv="refresh" を使っても大丈夫そうだ. (もちろん onload を待つような書き方をしている js の実行は微妙そうだけど)