ラック
Home > CMS > 記事 > 2015年7月 > MODxのjQueryの衝突回避

MODxのjQueryの衝突回避

カテゴリ: MODx

MODxで、ログイン中にjQueryが動かない(ログインしなければ問題ない)のをどうにかしてほしい、という案件が。

var $j = jQuery.noConflict();

でコンフリクト回避しているのは分かっていたのですが、サードパーティ製プラグインや自作のjsなどわりとこってりと盛っている状態でこれを全部$jに変えるのはちょっと…。

そんなことを考えていたら

コンフリクト回避を呼んでいるのはプラグイン「Quick Manager+」だと教わりまして、これをオフにすれば良いという結論に達しました。昔からある、上のパターンですね。

ただ、「Quick Manager+」はログイン中のフロントページの上端のリソース編集とか管理者画面に戻るボタンがあるあの便利なバーを司どっているので、オフにするとログインしているかどうか判別しづらい、管理者画面に戻りづらいなど弊害が生じます(このバーからリソースの編集は今のところしていないのでそこの部分の動作は無視)。

ということで、まずは「Quick Manager+」の設定タブの「jQuery noConflict mode in front-end」をfalseに。ついでに自前のjQuery本体があるので二重読み込みを回避するために「Load jQuery in front-end」もfalseに設定。

これでログイン時でもjQueryが問題なく動作することを確認。プラグイン自体のオフはしなくて済みました。

タグ: プラグイン

 



関連する記事一覧