本节学习如果在Drupal里交互使用jQuery.

jQuery在Drupal是内置支持的。存在根目录的misc目录中。

当调用drupal_add_js方法,会自动加载jQuery。

在Drupal页面里嵌入JS代码

1. 开启 PHP filter 模块。目的是可以在页面里嵌入PHP代码。

2. 新建一个页面。

注意在下面的文本格式中选择 "PHP Code",

Body 里填上以下内容。

<?php
drupal_add_js('jQuery(document).ready(function () {
jQuery("p").hide();
jQuery("p").fadeIn("slow");
});', 'inline');
?> <p id="one">Paragraph one</p>
<p>Paragraph two</p>
<p>Paragraph three</p>

最终如图。

drupal_add_js 是Drupal的内置函数,接收两个参数

第一个参数:执行的JS代码

第二个参数:inline 表示把JS代码放到本页面的<script></script>标签中,在文档的<head>元素内。

需要注意的是,当为inline,为避免冲突。要把JS代码放到(function ($) {....执行的JS代码.... })(jQuery); 语句中,或者使用 jQuery(),不要使用$()。

另一个需要注意的是,JS代码中带有引号的话,需要转义:

<?php
drupal_add_js('jQuery(document).ready(function () {
jQuery("#one").wrap("<div class=\'error\'></div>");
});', 'inline');
?>

在Drupal里引入JS代码文件

使用内置嵌入JS的方法优点是比较灵活,执行效率高,缺点是不方便调试。不利于在生产站点里使用。如果一不小心关闭了PHP filter模块,则影响较大。

方法一.  通过修改主题 .info文件添加JS

1. 在你的主题文件夹内创建一个scripts.js 文件

2. 编辑你主题的info文件,添加下面这行

scripts[] = scripts.js

3. 清除缓存,或者切换为其他主题再切换回来。

每个页面加会加载此JS文件。

方法二、 为某个模块使用JS文件

新建一个模块,名叫blockaway,

blockaway.module的代码

<?php
/**
* @file
* Use this module to learn about jQuery.
*/
/**
* Implements hook_init().
*/
function blockaway_init() {
drupal_add_js(drupal_get_path('module', 'blockaway') .'/blockaway.js');
}

代码非常简单,用到了drupal_get_path和drupal_add_js两个方法。

源码下载

Drupal学习(19) 使用jQuery的更多相关文章

  1. jQuery 学习笔记:jQuery 代码结构

    jQuery 学习笔记:jQuery 代码结构 这是我学习 jQuery 过程中整理的笔记,这一部分主要包括 jQuery 的代码最外层的结构,写出来整理自己的学习成果,有错误欢迎指出. jQuery ...

  2. 【学习笔记】jQuery的基础学习

    [学习笔记]jQuery的基础学习 新建 模板 小书匠  什么是jQuery对象? jQuery 对象就是通过jQuery包装DOM对象后产生的对象.jQuery 对象是 jQuery 独有的. 如果 ...

  3. jQuery学习笔记之jQuery的Ajax(3)

    jQuery学习笔记之jQuery的Ajax(3) 6.jQuery的Ajax插件 源码地址: https://github.com/iyun/jQueryDemo.git ------------- ...

  4. [转载]JavaEE学习篇之——JQuery技术详解

    原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/32102187 1.简介2.工具3.jQuery对象 1.DOM对象转化成j ...

  5. J2EE学习篇之--JQuery技术具体解释

    前面我们解说了的J2EE的技术都是服务端的技术,以下我们来看一下前端的一些开发技术,这一篇我们来看一下jQuery技术 简单介绍: jQuery由美国人John Resig创建,至今已吸引了来自世界各 ...

  6. J2EE学习篇之--JQuery技术详解

    前面我们讲解了的J2EE的技术都是服务端的技术,下面我们来看一下前端的一些开发技术,这一篇我们来看一下jQuery技术 简介: jQuery由美国人John Resig创建,至今已吸引了来自世界各地的 ...

  7. jQuery源代码学习之九—jQuery事件模块

    jQuery事件系统并没有将事件坚挺函数直接绑定在DOM元素上,而是基于事件缓存模块来管理监听函数的. 二.jQuery事件模块的代码结构 //定义了一些正则 // // //jQuery事件对象 j ...

  8. jQuery学习笔记(一)jQuery选择器

    目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...

  9. jQuery学习-什么是jquery? Js与jquery之间的关系 Jquery选择器

    1.  什么是jQuery以及学习的意义等 jQuery是一个js库 JS库是什么? 把常用的方法,进行封装,封装到一个单独的js文件当中,要用的时候直接调用. 学习jQuery主要学什么? 学习jQ ...

随机推荐

  1. POJ3347 Kadj Squares

    嘟嘟嘟 题意:给出一堆正方形的边长,且这些正方形都是\(45 ^ {\circ}\)斜放着并且紧挨着的,求从上往下看能看到几个正方形. 真是一道好题--跟计算几何关系不大. 想一下,如果我们能求出正方 ...

  2. 【webpack】理解配置文件

    学习链接: http://blog.csdn.net/hongchh/article/details/55113751 https://segmentfault.com/a/1190000009356 ...

  3. Golang测试包

    Golang测试包 golang自带了测试包(testing),直接可以进行单元测试.性能分析.输出结果验证等.简单看着官方文档试了试,总结一下: 目录结构和命令 使用golang的测试包,需要遵循简 ...

  4. nginx中文文档

    http://www.nginx.cn/doc/ LNMP :https://lnmp.org/faq/lnmp-vhost-add-howto.html 配置详解 配置详解2

  5. CentOS7安装mysql兼容性问题

    Linux上安装MySQL时出现不兼容的解决办法: [root@localhost ~]# rpm -ivh MySQL-server-5.5.24-1.linux2.6.x86_64.rpm Pre ...

  6. position+left+bottom+top+right

    今天才知道原来position加上上下左右可以控制的到div的宽度的 比如我现在有一个需要 这样一个需求 现在是红色部分50px 但是你可能不知道剩下的蓝色部分的高度是多少 蓝色部分要怎么填满剩余的高 ...

  7. cocos2dx lua 一键资源管理PowerShell脚本实现

    特别说明 此管理脚本不包含图片资源加密,热更新资源文件列表是md5 和 文件路径构成的txt,如下 脚本文件是放在和res src 同级的文件夹里面 脚本内容如下 clear $PSDefaultPa ...

  8. 【ZOJ 2996】(1+x)^n(二项式定理)

    Please calculate the coefficient modulo 2 of x^i in (1+x)^n. Input For each case, there are two inte ...

  9. C++笔记020:const 和 #define 的对比

      原创笔记,转载请注明出处! 点击[关注],关注也是一种美德~ 第一,const与#define的相同点 C++中的const常量类似于宏定义 const  int  c = 5  ≍  #defi ...

  10. vdbench 数据校验测试方法

    [root@dntosu001 vdbench]# cat pbd.conf*SD: Storage Definition*WD: Workload Definition*RD: Run Defini ...