FlexSliderの動きがフリーズしてしまう
Warning: Attempt to read property "post_excerpt" on null in /home/r7080487/public_html/anote.work/wp-content/themes/covernews/inc/hooks/blocks/block-post-header.php on line 43
人気の「FlexSlider」ですが、経験上、時々動きがフリーズしてしまうことがあります。
具体的な動作ですが、まず、スライド自体が動かなくなります。それから、画面自体のの上下スライドも不可能になります。要するに画面自体が完全に固まってしまうような状態です。
しかも、全てのスマートフォンで等しく起こるのではなく、比較的iPhoneのSafariやChromeで起こりやすい様子。しかも、毎回必ずではなく、フリーズすることもあればそうでないこもあったり、大丈夫かと思っていれば急にフリーズしたりと、正直言って原因不明です。
恐らく何かのバグが確実に存在するのでしょうが、根本的原因の究明は詳しい人にお任せするとして、取り急ぎ私が試して有効であった解決方法を共有します。
FlexSliderのフリーズ解決方法
どうやらバージョン毎に異なる方法が存在するようですが「jQuery FlexSlider v2.2.0」以前の場合に比較的フリーズが多発している感じです。この場合、最も簡単な方法は最新バージョンを使用することです。最新バージョンはこちらから。
あくまでも私の試した範囲内ですが、複数の環境下で、v2.2.0 → v2.2.2 とするだけで直りました。
v2.2.0 → v2.2.2 の場合、ファイル名の「jquery.flexslider-min.js」は変わらないので、最新版をダウンロード、元のファイルを上書きする形でOKでした。
上記以外のバージョンの検証はしていませんので、まずはテスト環境下にて試してみて、OKならそのまま適用。うまく動かない場合はHTML・CSSも含めたファイル一式を差し替えるなどの対応が必要になるかもしれません。
旧バージョンでは、バージョン毎に一部JavaScriptの記述を書き換えるなどで改善する方法もあるようですが、それは詳しい人にお任せするとして、取り急ぎはバージョンアップにて対応するのがお手軽かと。