2011-02-10 6 views
1

ここに詳細は載っていませんが、superfish.jsとWordPressのプラグイン "contact form 7"の間でjavascriptの競合が発生していますか?javascriptの競合:連絡先のフォーム7&superfish.js

基本的に、私はすでに多くのデバッグを行っており、そこでは保証された競合が見つかっています。サイト上のその他すべてが素晴らしいです。

WordPressヘッダーで連絡先フォーム7を初期化する場所を制御できないため、superfish.jsをページのどこか他の場所に初期化する必要がありますか?

EDIT:紛争の性質を言及するのを忘れた - 両方のスクリプトが

+0

あなたが紛争のどのような種類を経験していますか? – limc

+0

良い質問。衝突は、スーパーフィッシュのチャイルドウールが隠され、ホバーに現れないことです。 – Brian

答えて

6

がそれを手に入れたアクティブな場合SUPERFISH子のULのは表示されません! jQuery複数のバージョンがロードされています(プラグインは古いものをロードしていました)。 (コアファイルを編集せずに)お問い合わせフォーム7から順に登録解除のjQueryでは、あなたは読み込みを停止するには、あなたのfunctions.phpに以下の行を追加することができ、プラグインの最新バージョンでは

// De-register jQuery from Contact Form 7 

add_action('wp_print_scripts', 'my_deregister_javascript', 100); 
function my_deregister_javascript() { 
    wp_deregister_script('contact-form-7'); 
} 
+0

こんにちは、これは古いですが、これは古くなったjQueryを削除するだけで、Contact Form 7の他の必要なJavascriptコードは削除しないのですか?私はこれをはるかにテストしていないが、これまでのところうまくいっている! :) – ton

+0

私の頭の上からはわかりませんが、コンタクトフォーム7は完全にjavascriptに依存していますので、このアクションを追加してもコンタクトフォーム7の動作を妨げない場合は、正常に動作するはずです。私は関数がjQueryをロードしているだけで、それは自分のライブラリであり、他のどのようなものでもないと確信しています。検証に失敗したフォームに何かを入力するだけで、検証をテストできます。 – Brian

+0

申し訳ありませんが、私は不注意にupvoteをクリックしました。私は忙しかったし、今すぐテストすることができました... functions.phpにそれを追加すると、連絡先フォームが機能しなくなりました。 : - / – ton