0

そのため、何が起こっているのか、データベースがどのようにランダムに更新されているのかを理解するのにかなりの時間がかかりましたが document.body.style.backgroundImage、Javascript での使用に直接関係していることを発見しました。

これが私のクエリを再度実行しないようにする方法や、どのように機能するかを知っている人はいますdocument.body.style.backgroundImageか? 代替案?バックグラウンドを変更するために Javascript に対して常にクエリを実行する余裕はありません。

仕様

ページロードの開始時に PHP が取得し、ステートメントtime()を使用してデータベースに保存するWeb サイトを実行しています。mysql_query()私は最近、頻繁に実行され、関数でこのコードを使用して背景を変更する Javascript ループを自分の Web サイトに実装しました。document.body.style.backgroundImage = "url('')";

これが実行されて背景が変更されると、どういうわけかクエリが私のウェブサイトで再び実行され、時間を変更してデータベースが再度更新されることに気付きました。javascript の background change ステートメントをコメントアウトして、ループの残りの部分を通常どおり実行できるようにすることで、原因を切り分けました。その後、更新されなくなりました。その行のコメントを外すとすぐに、問題が再び発生します。

4

1 に答える 1

1

これは、背景画像をに設定するとurl('')、現在表示しているページに対してHTTPリクエストを行うようにブラウザに効果的に指示しているためです。空の文字列''は相対URLと見なされます。(これは、フォームのを省略した場合action、またはフォームを''に設定した場合に発生するのと同じことです。フォームは現在のページに送信されます。)

これを回避するには、document.body.style.backgroundImage = "";の代わりに試してくださいurl('')

于 2013-01-18T21:17:49.520 に答える