Drupal学习(19) 使用jQuery
本节学习如果在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的更多相关文章
- jQuery 学习笔记:jQuery 代码结构
jQuery 学习笔记:jQuery 代码结构 这是我学习 jQuery 过程中整理的笔记,这一部分主要包括 jQuery 的代码最外层的结构,写出来整理自己的学习成果,有错误欢迎指出. jQuery ...
- 【学习笔记】jQuery的基础学习
[学习笔记]jQuery的基础学习 新建 模板 小书匠 什么是jQuery对象? jQuery 对象就是通过jQuery包装DOM对象后产生的对象.jQuery 对象是 jQuery 独有的. 如果 ...
- jQuery学习笔记之jQuery的Ajax(3)
jQuery学习笔记之jQuery的Ajax(3) 6.jQuery的Ajax插件 源码地址: https://github.com/iyun/jQueryDemo.git ------------- ...
- [转载]JavaEE学习篇之——JQuery技术详解
原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/32102187 1.简介2.工具3.jQuery对象 1.DOM对象转化成j ...
- J2EE学习篇之--JQuery技术具体解释
前面我们解说了的J2EE的技术都是服务端的技术,以下我们来看一下前端的一些开发技术,这一篇我们来看一下jQuery技术 简单介绍: jQuery由美国人John Resig创建,至今已吸引了来自世界各 ...
- J2EE学习篇之--JQuery技术详解
前面我们讲解了的J2EE的技术都是服务端的技术,下面我们来看一下前端的一些开发技术,这一篇我们来看一下jQuery技术 简介: jQuery由美国人John Resig创建,至今已吸引了来自世界各地的 ...
- jQuery源代码学习之九—jQuery事件模块
jQuery事件系统并没有将事件坚挺函数直接绑定在DOM元素上,而是基于事件缓存模块来管理监听函数的. 二.jQuery事件模块的代码结构 //定义了一些正则 // // //jQuery事件对象 j ...
- jQuery学习笔记(一)jQuery选择器
目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...
- jQuery学习-什么是jquery? Js与jquery之间的关系 Jquery选择器
1. 什么是jQuery以及学习的意义等 jQuery是一个js库 JS库是什么? 把常用的方法,进行封装,封装到一个单独的js文件当中,要用的时候直接调用. 学习jQuery主要学什么? 学习jQ ...
随机推荐
- 让CI框架支持service层
大家知道CodeIgniter框架式MVC分层的,通常大家把业务逻辑写到Controller中,而Model只负责和数据库打交道. 但是随着业务越来越复杂,controller越来越臃肿,举一个简单的 ...
- 使用loader打包静态文件-样式2
这篇我们了解下css-loader常用的配置项,要配置的话,use里面就不再是一个字符串了 // 打包模块不知道该怎么办,就去模块配置里面该怎么办 module: { // 规则 rules: [{ ...
- Odoo中的逆计算——由compute字段的值逆向修改其依赖值
转载请注明原文地址:https://www.cnblogs.com/cnodoo/p/9281406.html 当通过compute属性指定方法,根据依赖值计算得到当前字段值时.一般也要制定这个计算的 ...
- 【jQuery】Deferred(延迟)对象
本文针对jQuery-todolist项目中使用到的Deferred(延迟)对象进行具体分析 $.Deferred() 是一个构造函数,用来返回一个链式实用对象方法来注册多个回调,并且调用回调队列,传 ...
- Mysql注入攻击与防御(思维导图笔记)
- Ubuntu 14.04 系统安装后无法上网的问题(eth0识别不出)
Ubuntu 14.04 1.网口处网线状态等正常跳动 2.ifconfig 指令查询不到网卡信息 说明缺少了网卡驱动. 使用 lspci 指令查看系统中所有的驱动信息,找到 Ethernet Con ...
- Android的JNI调用(一)
Android提供NDK开发包来提供Android平台的C++开发,用来扩展Android SDK的功能.主要包括Android NDK构建系统和JNI实现与原生代码通信两部分. 一.Android ...
- EF Core 中多次从数据库查询实体数据,DbContext跟踪实体的情况
使用EF Core时,如果多次从数据库中查询一个表的同一行数据,DbContext中跟踪(track)的实体到底有几个呢?我们下面就分情况讨论下. 数据库 首先我们的数据库中有一个Person表,其建 ...
- 身份认证系统(二)多WEB应用的单点登录
随着互联网的发展,web应用的复杂度也一直在提升,慢慢的单一的web应用已经不能满足复杂的业务需求.例如百度的搜索.新闻.百科.贴吧,其实本质上都是不同的网站.当用户使用这些平台的时候,我们当然不希望 ...
- [原创]HBase学习笔记(2)- 基本操作
1.使用hbase shell连接hbase 2.输入help可以查看帮助 3.输入list查看当前hbase中的所有表 4.使用create创建表test 其中test是表名,cf是列族.该表只创建 ...