我想将
Forrst Sap功能添加到Drupal 7网站.
首先,这涉及将jquery.sap.js脚本添加到我可以通过我的主题.info文件执行的站点.我知道我必须替换jQuery现在是命名空间,以避免与其他Javascript库(如Prototype)发生冲突.期望将jQuery用作$的所有代码都应该包含在外部上下文中.
(function ($) { // All your code here }(jQuery));
但是我不确定如何为这段代码指定Drupal行为?
$('#item').sap({ distanceFromTheTop: 0 });
我相信我可以用drupal_add_js做到这一点,但我又不知道如何通过template.PHP文件来解决这个问题?
谢谢你的帮助!
解决方法
这是一个用于向Drupal添加javascript文件的样板代码.
(function ($) { Drupal.behaviors.[myName] = { attach: function(context,settings) { //Begin my code var myVarOne,myVarTwo; $('#item').sap({ distanceFromTheTop: 0 }); //I'm done with my code } }; })(jQuery);
drupal_add_js()
是一个很好的函数,用于在代码中添加js文件,因为它们将在上下文中聚合,因此一些页面可以有大量的js脚本,但它们不会在其他页面加载的缓存聚合js文件中加载.
如果您需要每个页面上的脚本,或者如果它很小,则使用脚本[] = myscript.js通过[template_name] .info文件添加脚本,或者如果您的模板文件夹有一个名为js的脚本的子文件夹,则使用脚本[] = js /myscript.js