として、marqueeタグを使用して、
文字を流しているのですが、
onload時に文字がブラウザ上少しだけ
止まってしまいます。
これはどうしたらいいのでしょうか?
ブラウザはfirefoxでOSはturbolinuxで
実行環境は、Xwindowから別サーバに置いて
あるページを参照しています。
わかるでしょうか?
setInterval("処理",時間)は、第一引数で指定した処理はsetInterval()自体の呼び出し時には実行せず、
第二引数で指定した時間が経ってはじめて一番最初の呼び出しが実行されるので、
もしaa()が一番最初に実行されていないことが原因でしたら、
<body onload="aa();setInterval('aa()',6000);">
とすると呼び出し時に最初に実行されるようになります。
onload="setInterval('aa()',6000);"では、最初のaa()はonloadイベント発生から6秒後に実行されると思います。
onloadイベント発生直後にもaa()を実行したいのであれば、onload="aa();setInterval('aa()',6000);"のように、最初にaa()を実行されるとよいと思います。
前回のsleep関数で処理をやっているのですが
サーバー側のCPU負荷は、半分以下になったのですが、
クライアント側のブラウザのCPU負荷が、
onload時に70%などになってしまいます。
これの解消方法はわかりますか?
javascript では、sleep/wait などの機構が無く、setInterval/setTimeout関数では CPUループしてしまうため、CPU資源をかなり使用します。止まってしまうのはその影響ではないかと思います。
同様の質問として以下があります。参考にされてはいかがでしょうか。
前回のsleep関数で処理をやっているのですが
サーバー側のCPU負荷は、半分以下になったのですが、
クライアント側のブラウザのCPU負荷が、
onload時に70%などになってしまいます。
これの解消方法はわかりますか?
>前回のsleep関数で処理をやっているのですが >サーバー側のCPU負荷は、半分以下になったのですが、 >クライアント側のブラウザのCPU負荷が、 >onload時に70%などになってしまいます。 >これの解消方法はわかりますか?
sleep関数といっても、関数内で
for/whileの処理ループを使って待機する場合は、
JavaScriptが処理能力を占有して
応答能力にCPU能力をまわせないためにCPU負荷が上がります。
そういった処理ループを使わない方法でやる必要があります。
setTimeout,setIntervalでは、処理ループではなく
タイマーを使うため、
for/while処理ループ式より負荷を下げる方法があります。
具体的にどういうコードでやっているのか
載せたほうがいいかと思われます。(必要があれば別途質問で)
では別で質問を立てますのでよろしくお願い致します。
前回のsleep関数で処理をやっているのですが
サーバー側のCPU負荷は、半分以下になったのですが、
クライアント側のブラウザのCPU負荷が、
onload時に70%などになってしまいます。
これの解消方法はわかりますか?