javascript - setInterval が 1 回しか実行されないのはなぜですか?
黄舟
黄舟 2017-06-30 09:55:19
0
7
941
  • シンプルなバックグラウンド切り替え

jクエリ部分

リーリー

htmlセクション

リーリー

CSS部分

.bg2 デフォルト表示:なし;

  • setInterval()は一度しか実行されていないのに、なぜ二回目は入力できないのかお聞きしたいのですが。

親愛なる上司の皆様、私を軽蔑しないでください。ご回答ありがとうございました~

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全員に返信(7)
ringa_lee

あなたを軽蔑するわけではありませんが、これは明らかに構文の問題です...実際、setIntervalは常に実行されると思いますが、関数の実行結果はdirect固定されており、ループの最終結果は2番目の画像が表示されることです。そして最初の写真は非表示になっているので、実装されていないように見えます。

これを行うべきです:

リーリー

ここではタイマーの外側で状態を保存するためにクロージャーが使用されており、毎回ループダウンできるようになります。

レンダリングに関する知識も追加します。この種の for ループでビューステートを変更する場合、ブラウザーはこれらのステートをキャッシュし、変更するとすぐにレンダリングするのではなく、適切なタイミングでレンダリングします。したがって、フラッシュすることさえ見えません。

いいねを押す +0
学习ing

ぜひ参考にしてください

リーリー
いいねを押す +0
習慣沉默

setInterval(関数 direct(){

リーリー
いいねを押す +0
滿天的星座

1回ループするとiの値は1になり、その後は1のままです。letを使ってみてください

いいねを押す +0
过去多啦不再A梦

このエフェクトを1つずつ順番に表示しますか?

リーリー
いいねを押す +0
为情所困

$(関数(){

リーリー

})

いいねを押す +0
滿天的星座

リーリー

それが正しいかどうかは分かりませんが、これが問題だといつも感じています

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!