0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Swiperのautoplay(自動再生)が止まらないようにする方法

0
Last updated at Posted at 2026-09-29

Swiperの自動再生機能を使用する際、$\bbox[yellow]{\mathsf{ disableOnInteraction: false }}$を設定しても、時々スライドが止まってしまう問題に遭遇することがあります。この記事では、その原因と解決方法について解説します。


問題の原因

Swiperの自動再生が止まってしまう主な原因は以下の通りです:

  1. ユーザー操作による干渉
  2. マウスホバー時の動作
  3. トランジションの完了待ち
  4. タッチ操作の影響
  5. DOMの変更による影響

解決方法

以下のオプションを組み合わせることで、より安定した自動再生を実現できます:

var swiper = new Swiper('.swiper', {
	autoplay: {
		delay: 0,                    // デフォルト: 3000
		disableOnInteraction: false, // デフォルト: true
		pauseOnMouseEnter: false,    // デフォルト: true
		waitForTransition: true,     // デフォルト: true
		stopOnLastSlide: false,      // デフォルト: false
	},
	allowTouchMove: false,         // デフォルト: true
	watchSlidesProgress: true,     // デフォルト: false
	observer: true,                // デフォルト: false
	observeParents: true,          // デフォルト: false
});

各オプションの説明

autoplayオプション

  • delay: スライド間の遅延時間(ミリ秒)
    • 0に設定することで、よりスムーズな連続再生が可能
    • デフォルト値: 3000
  • disableOnInteraction: ユーザー操作時の自動再生停止
    • falseに設定すると、ユーザー操作後も自動再生を継続
    • デフォルト値: true
  • pauseOnMouseEnter: マウスホバー時の動作
    • falseに設定すると、マウスホバー時も自動再生を継続
    • デフォルト値: true
  • waitForTransition: トランジション完了待ち
    • trueに設定すると、トランジション完了を待ってから次のスライドに移動
    • デフォルト値: true
  • stopOnLastSlide: 最終スライドでの停止
    • falseに設定すると、最後のスライドでも自動再生を継続
    • デフォルト値: false

その他の重要オプション

  • allowTouchMove: タッチ操作の有効/無効
    • falseに設定すると、タッチ操作による干渉を防止
    • デフォルト値: true
  • watchSlidesProgress: スライド進行状況の監視
    • trueに設定すると、スライドの進行状況を監視して安定性を向上
    • デフォルト値: false
  • observer: DOM変更の監視
    • trueに設定すると、DOMの変更を監視して安定性を向上
    • デフォルト値: false
  • observeParents: 親要素の変更監視
    • trueに設定すると、親要素の変更も監視
    • デフォルト値: false

まとめ

Swiperの自動再生を安定させるには、単に $\bbox[yellow]{\mathsf{ disableOnInteraction: false }}$ を設定するだけでなく、複数のオプションを組み合わせる必要があります。特に、ユーザー操作による干渉を防ぎ、スライドの進行状況を適切に監視することで、より安定した自動再生を実現できます。

これらの設定を組み合わせることで、以下の効果が期待できます:

  • より安定した自動再生
  • ユーザー操作による干渉の防止
  • スムーズな連続再生
  • パフォーマンスの向上

必要に応じて、これらのオプションを調整することで、最適な動作を実現できます。


関連記事

https://code-plus.jp/gp/swiper-autoplay-8857/

https://code-plus.jp/gp/post-5982/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?