2014.12.09
setIntervalに記述した処理は、指定した秒数後に初めて実行されますが、開始時にすぐさま実行させたい場合があると思います。
今までは関数にしておいてsetIntervalと同時に呼び出したりしていましたが(大した手間ではないので)、やっぱり余計な記述はないほうが良いので調べてみました。
setInterval((function hoge() {
// ここに処理を記述
return hoge;
}()), 1000);
上記のように書くことで即時実行させることができます。
ソースは下記のサイト様より。
arguments.callee についても書かれていて参考になりました。
setIntervalをaruguments.calleeを使わずに0秒でも発火させる
今までは関数にしておいてsetIntervalと同時に呼び出したりしていましたが(大した手間ではないので)、やっぱり余計な記述はないほうが良いので調べてみました。
setInterval((function hoge() {
// ここに処理を記述
return hoge;
}()), 1000);
上記のように書くことで即時実行させることができます。
ソースは下記のサイト様より。
arguments.callee についても書かれていて参考になりました。
setIntervalをaruguments.calleeを使わずに0秒でも発火させる
2014.12.03
あるページAからfancyBoxのようなモーダルウィンドウを開いたままページBに移動した後、
ブラウザの戻るボタンでページAに戻ったところ、モーダルウィンドウが開いたままになっていました。
SafariとFirefoxで起こるようです。
下記のサイトで詳しくまとめられていました。
SafariとFirefoxでブラウザバック(戻るボタン)を押した際、前のページの画面効果残っている件ついてを解説
JS等のスクリプトの実行状況をキャッシュしてしまうそうです。
<header>内に下記の記述をすることで解決できます。
■通常の記述
<script type="text/javascript">
window.onunload = function(){};
</script>
■jQueryを利用した場合
<script type="text/javascript">
$(window).bind("unload",function(){});
</script>
ブラウザの戻るボタンでページAに戻ったところ、モーダルウィンドウが開いたままになっていました。
SafariとFirefoxで起こるようです。
下記のサイトで詳しくまとめられていました。
SafariとFirefoxでブラウザバック(戻るボタン)を押した際、前のページの画面効果残っている件ついてを解説
JS等のスクリプトの実行状況をキャッシュしてしまうそうです。
<header>内に下記の記述をすることで解決できます。
■通常の記述
<script type="text/javascript">
window.onunload = function(){};
</script>
■jQueryを利用した場合
<script type="text/javascript">
$(window).bind("unload",function(){});
</script>
1