基本的な質問はありますが、まだ満足のいく回答は見つかりませんでした。私は、私は実際に行動の概念を理解していないことを認めなければならない。私が理解したことは、それが複数回(例えばajaxリフレッシュのために)発生することができるので、jQuery(document).ready
のようにより柔軟であるということです。しかし、常に複数のjQueryファイルを扱うように、常にaspectedとして動作するわけではありません。Drupal 7 jQueryファイルを乗算したjQueryの動作
具体的な問題:Drupalサイトにjsファイルを乗算しました。いくつかはなどのフォーム、モジュール内のdrupal_add_js介して結合しているいくつかの、カスタムブロックに取り付けたいくつか、に添付 すべてのjsファイルは、次のようになり:
(function ($) {
Drupal.behaviors.THEMENAME = {
attach: function(context, settings){
/* CODE */
}
};
}(jQuery));
すべてが1つのjsファイルを除いて動作します(特定のページにありませんほとんどの場合は動作しますが、ノードページ[ページモジュールで構造化されていません])。
しかし、私はどのように振る舞いに名前を付けるのかは分かりません。彼らはすべて同じ名前か、異なっていなければなりませんか?名前(THEMENAME
)を変更し、一意の名前(対応するモジュールなど)を指定すると、ほとんどのjはもう動作しませんが、特定のページでのみ動作するものはすべてのページで動作します。
どのようにすればいいですか?異なるjは依存関係がなく、ほとんどは単純なトグル表示、非表示、css操作です。
しかし、これを行うと、私のjsファイルは、前に正常に動作しなかったファイル以外は動作しません。説明は?現在はもはや動作しないファイルはほとんどがカスタムブロックに含まれています '$ block ['content'] = array( '#attached' => array( 'js' => array( 'FILE.js' ) '、') ';'; ')' ;;;;;;;;;; またはフォーム経由で $ form ['attached'] ['js'] [] = array( 'type' => 'ファイル'、 'data' => FILE.js '、); ' – Mika
別のjsスクリプトでフォルトが発生しました(https://www.drupal.org/node/1181562を参照)。ありがとうございました。今はすべて正常に動作します! – Mika