在特定页面中加载JS

时间:2014-05-12 15:27:24

标签: javascript php drupal

我将此用于具有网址的特定网页。例如/ register,/ create等...代码是:

function mytheme_preprocess_page(&$variables) {
     // page path
      if (arg(0) == 'fbconnect' && arg(1) == 'register' && arg(2) == 'create') {
        drupal_add_js(drupal_get_path('theme', 'mytheme') . '/js/scrollTo.js', 'file');
      }
    }

所以现在我在考虑如何为CSS类加载JS读取,而不是页面URL,并意识到为arg添加类不起作用,所以下面的内容不起作用:

  if (arg() == 'form-item-search-block-form') {
    drupal_add_js(drupal_get_path('theme', 'mytheme') . '/js/jquery.placeholder.js', 'file');
  }

有什么想法吗?新手在这里。

1 个答案:

答案 0 :(得分:0)

您的第一个示例,仅匹配' fbconnect / register / create'的网址。您可以通过以下方式更轻松地完成此任务:

if ('fbconnect/register/create' == current_path()) {

对于第二个,您希望通过特定于自定义模块中的搜索块表单的表单alter hook来执行此操作。假设表单ID为search_block,它就是:

function mymodule_form_search_block_alter(&$form, &$form_state, $form_id) {
    drupal_add_js(drupal_get_path('theme', 'mytheme') . '/js/jquery.placeholder.js', 'file');
}