Drupal 加载JS,javascript:drupal_add_js()等几种方法

在开发drupal模块的时候,会遇到添加js问题,这是可能会用到drupal_add_js 这个函数。官方关于这个函数的地址
includes/common.inc, 第 2070

版本
4.7
drupal_add_js($file, $nocache = FALSE)
5
drupal_add_js($data = NULL, $type = 'module', $scope = 'header', $defer = FALSE, $cache = TRUE)
6
drupal_add_js($data = NULL, $type = 'module', $scope = 'header', $defer = FALSE, $cache = TRUE, $preprocess = TRUE)
7
drupal_add_js($data = NULL, $options = NULL)

其实可以看出drupal 7版本更加简洁了。

在drupal6下使用:
方法1,drupal_add_js('var showtime='.variable_get('showtime',1000).'', 'inline'); 用了直接加入inline在page html里,如果打开html源代码就可以到输出结果:

方法2,

<?php
drupal_add_js
(drupal_get_path('module', 'note') .'/note.js');
?>

这个输出的结果形式:

方法3.
还有的就是经常如果开发api可能会使用外部的js文件,最简单的方式可以这样处理:
使用函数:drupal_set_html_head();
代码:

<?php
drupal_set_html_head
('<script type="text/javascript" src="http://ditu.google.cn/maps?file=api&amp;v=2&amp;key=abc" type="text/javascript" /></script>');
?>

这里我是调用了一个google的api key
输入结果表现形式:

可以在drupal加载的时候写入js

<?php
function yourmodulename_init() {//当模块初始化的时候加载

drupal_set_html_head('<script type="text/javascript" src="http://ditu.google.cn/maps?file=api&amp;v=2&amp;key=abc" type="text/javascript" /></script>');
drupal_add_js(drupal_get_path('module', 'note') .'/note.js');

}
?>

from :http://hellodrupal.info/node/73


本文永久地址:http://drupalsh.cn/node/154 , 转载请注明出处.