Výhody použití Behaviors v Drupalu:
Příklad obecného jQuery:
$(document).ready(function () { // Do some fancy stuff. });
Příklady použítí jQuery v Drupal 7:
A)
(function ($) { // To understand behaviors, see https://drupal.org/node/756722#behaviors Drupal.behaviors.my_custom_behavior = { attach: function(context, settings) { // Place your code here. } }; })(jQuery);
B)
// JavaScript should be made compatible with libraries other than jQuery by // wrapping it with an "anonymous closure". See: // – https://drupal.org/node/1446420 // – http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth (function($, Drupal, window, document, undefined) { Drupal.behaviors.myModuleBehavior = { attach: function (context, settings) { $('input.myCustomBehavior', context).once('myCustomBehavior', function () { // Apply the myCustomBehaviour effect to the elements only once. }); } }; })(jQuery, Drupal, this, this.document);
Příklad předání proměnné z PHP do JavaSkriptu:
drupal_add_js(array('myTyxModule' => array('tax_rate' => '0.021')), 'setting');
(function($) { Drupal.behaviors.myTyxModule = { attach: function (context, settings) { // You can access the variable by using Drupal.settings.myTyxModule.tax_rate alert(Drupal.settings.myTyxModule.tax_rate); } }; })(jQuery);
Dokumentace:
Příklad použití jQuery – zobrazující se text Text...
ve vyhledávacím poli:
scripts/
obsahující soubory jquery.autofill.js a javascript.js (z přiložených souborů odstraňte příponu .txt).scripts[] = scripts/javascript.js scripts[] = scripts/jquery.autofill.js
Příloha | Velikost |
---|---|
jquery.autofill.js.txt | 1.97 KB |
javascript.js.txt | 157 bajtů |
Příklad použití jQuery – při přejetí myší zůstane blok chvíli zobrazen, při kliku na záhlaví zůstane zobrazen trvale, při opětovném kliku se skryje:
js/
obsahující soubor search_exposed_block.js (z přiloženéo souboru odstraňte příponu .txt).scripts[] = js/javascript.js scripts[] = js/jquery.autofill.js
libraries[search_exposed_block][name] = Toggle search exposed block libraries[search_exposed_block][description] = Toggle search exposed block libraries[search_exposed_block][js][0][file] = search_exposed_block.js libraries[search_exposed_block][js][0][options][weight] = -20
Příloha | Velikost |
---|---|
search_exposed_block.js.txt | 1.59 KB |