ホームページ >バックエンド開発 >PHPチュートリアル >PHPによるJSタイマーの呼び出しに問題があります。

PHPによるJSタイマーの呼び出しに問題があります。

WBOY
WBOYオリジナル
2016-06-23 14:06:36929ブラウズ

test.js コードは次のとおりです:
var i = 0;
document.write(i);
i++;
function JavaTime();
{
setInterval('fun()',2000); }


test.php コードは次のとおりです:
82e4865872727f41d1edae4f463247d6

7bf630ee12b699e70a010d48ba3f76cd script src= "test.js" type="text/javascript">2cacc6d41bbb37262a98f745aa00fbf0
dde0fa9d1429eeffa1e84d583716349aJavaTime( );< ;/script>"

?>
6c04bd5ca3fcae76e30b72ad730ca86d
36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

js タイマーが 1 回だけ実行され、その後ブラウザがこの状態のままになるのはなぜですか:
0 のみが表示され、ブラウザは回転し続けます。 。 。





ディスカッション(解決策)への返信

私もJSについてはあまり知りません。これをalert(i)に変更すると数字が変わりますが不思議です。

先生、Chrome などの IE ベースではないブラウザに変更してみてください。望む効果は得られますが、改行は n ではなく df250b2156c434f3390392d09b1c9563[img=http://]です。 [/img]


Effect

<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title><script type="text/javascript">function JavaTime(){    var icolor=0;    var iNum=256;    setTimeout(fun, 1000);    function fun()    {            document.write(icolor);            document.write('<br/>');            icolor++;            setTimeout(fun, 1000);                    }}</script></head><body><?phpecho "<script language='JavaScript' type='text/javascript'>JavaTime();</script>";?></body></html>

このように書くだけです。テストしましたが問題ありません。

上の人達が大丈夫と言っているのは全くのナンセンスです!

ページがロードされると、ページのキャリアドキュメントが閉じられます

後続の document.write は新しいドキュメントに書き込まれます

非 IE 系ブラウザはドキュメントのルートとして body ノードのみを使用しますが、表面上は jsはまだ実行されていますが、本文内の元のコンテンツはもう存在しません

したがって、ページが読み込まれた後に js が実行される限り、ページのコンテンツを操作したり、アラートで情報を表示したりするには、 innerHTML と innerText のみを使用できます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。