我想将
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
附:看看drupal.stackexchange.com