僕はこのWordPressでブログを作っているのだけれども、ある特定のページだけ『Easy FancyBox』が動作しない。
Easy FancyBox は記事欄に貼り付けた画像をクリックし時、スィ~っとブラウザ上から飛び出すように拡大して表示できるようになるプラグインですね。
ブログが動的になる感じもあり、非常に重宝していたのだけど、動作しないページがあり、ページ上でF12を押して検証すると、
fancybox is not a function
とエラーが出ていることが判明しました。
しかし解決策も見つからず四苦八苦していましたが、原因については判明したので書き記しておきたく思います。
誰かこの記事を見てくれた人が、解決策を考案してくれることを期待して・・・
(わたくし、PHPとかJavaはニガテで、今現在も解決策判明しておらず・・・)
目次
1 原因
結論、プラグインの競合であります。
具体的には、『Easy FancyBox』と『TablePress』であります。
当方のブログで本件のエラーが発生しているページの共通点を探していたところ、全て記事内に『Easy FancyBox』を適用している画像と、『TablePress』を用いた表を組み込んでいたのです。
特に TablePress については、『DataTables JavaScriptライブラリの機能』をオンにしているときに本件エラーが発生するようです。
と本件を引き起こしているプラグインは判明するも、根本的な原因はコードを解析できない僕には訳わかめ!(*’▽’)
2 暫定的措置
スパっとコードを直せればスマートで格好良いでしょうが、当方には無理でして・・・
当該投稿記事について、
- Easy FancyBox を使用する画像を使わないこと
<a ~>タグを使わず、<img ~>タグの画像のみとする - TablePress は DataTables JavaScriptライブラリ機能をオフにする
のいずれかの措置で解決?(エラーは出ない状況)としております。
TablePressのライブラリ機能は、記事を見に来てくれたユーザ側でも表の並び替えや検索絞り込みができる便利なものなので、
大量データの表がある記事は Easy FancyBox を使わない
ようにし、逆に、
データが少ない表は DataTables JavaScriptライブラリをオフ
にし、Easy FancyBox を活用してページ作りをしております。
どなたかが解決策を作って、このプラグインが共存できるようにしていただけると幸いです(*’▽’)
コメントを残す