JQuery初识

为了简化JS的开发,一些JS库诞生了,JQuery就是其中的一个。JQuery是一个兼容多浏览器的Javascript框架。是轻量级的JS库。jQuery为用户提供了丰富的文档说明,使用户能更方便地处理HTML documents、events、实现动画效果,方便地为网站提供AJAX交互,同时还有许多插件可供选择。

JQuery导图

DOM对象与JQuery对象

DOM(Document Object Model)文档对象模型,每一份DOM都可以表示成一棵树。注意这里特别容易混乱的一个概念JQuery对象。JQuery不是JQuery对象,Jquery对象是通过JQuery包装DOM对象后产生的对象。JQUery对象是JQUery独有的。在JQuery对象中无法使用DOM对象的任何方法。

JQuery对象:

var $obj = $("#id");

DOM对象:

var domObj = document.getElementById("id"); 

JQuery对象和DOM对象相互转换。DOM对象才能使用DOM中的方法,不能使用JQuery对象中的方法。

JQuery对象转换成DOM对象:

var $cr=$("#cr"); //jquery对象
var cr = $cr[0]; //dom对象 也可写成 var cr=$cr.get(0);
alert(cr.checked); //检测这个checkbox是否给选中

DOM对象转换成JQuery对象:

var cr=document.getElementById("cr"); //dom对象
var $cr = $(cr); //转换成jquery对象

与Ajax应用

Ajax不需要插件支持,这样可以被绝大多数主浏览器所支持;能在不刷新整个页面的前提下更新数据,使得WEB应用程序能更为迅速地回应用户的操作;Ajax模式通过XMLHttpRequest对象向服务器端提交希望提交的数据,即按需发送;减轻服务器和带宽的负担。

JQuery对Ajax进行了封装,在JQuery中$.ajax()方法属于最底层的方法,第二层是load() 、$.get()和$.post()方法,第三层是$。getScript和$.getJSON()方法。

load()方法是JQUery中最为常用的Ajax方法,能载入远程HTML代码并插入到DOM中。代码如下:

 
$(function(){
$("#send").click(function(){
$("#resText").load("test.html");
});
});

编写插件

自己对JQuery中插件的初步理解是把JQuery中具有实现相似功能的事件封装起来,优化代码。通过参数的不同把不同的效果显示出来。

插件的格式与框架:返回一个JQuery对象

;(function(){ 
$.fn.extend({ 
"color":function(color){return this.css("color",color);//扩展了一个color方法}   }); })();

注意事项:

1.所有的对象方法应该附加到jQuery.fn对象上,而全局函数需要附加到jQuery对象上 
2.在插件内部 this指向的是获取的jQuery对象,而不像一般的方法,指向的是dom元素 
3.插件内部应避免使用$作为jQuery对象的别名,但可以使用闭包技巧。

4.一般情况下,插件应该返回一个jQuery对象,以保证可链式操作。

总结

学习需要整理,如果不整理那么学的东西越来越多,就会导致狗熊掰棒子式学习。关于JQuery的学习远远不止这些东西,这些理论上的东西先要学好了,总结了,在应用中发挥更大的作用,将它们发挥的淋漓尽致。学习就是这样,学习——学以致用——学习。

[置顶] 强大的JQuery的更多相关文章

  1. jQuery实现表格行上移下移和置顶

    jQuery实现表格行上移下移和置顶 我们在操作列表数据的时候,需要将数据行排列顺序进行调整,如上移和下移行,将行数据置顶等,这些操作都可以在前端通过点击按钮来完成,并且伴随着简单的动态效果,轻松实现 ...

  2. jQuery操作table数据上移、下移和置顶

    jQuery 操作table中的tr换行的步骤如下: 1.获取当前tr var $tr = $(this).parents("tr"); 2.移动tr //上移 $tr.prev( ...

  3. jQuery 元素的选中, 置顶、上移、下移、置底、删除

    如截图: <ul> <li class="li01" onclick="C_columnSetTop(this)"><i>& ...

  4. jquery实现标签上移、下移、置顶

    eg:如在后台的标签列表中,实现上移.下移.置顶功能 思路: 1.先用到的克隆方法.clone(true): 即把当前要移动的项先保存好,备于后用. 2.找到当前标签所对应的相关元素及其相关方法: 如 ...

  5. jquery——制作置顶菜单

    置顶菜单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  6. jquery中的置顶,置底,向上,向下的排序功能

    css .selectedLi{background: #f0ad4e;color:#fff;} html部分 <ul class="seetSelect2" id='sys ...

  7. [知了堂学习笔记]_css3特效第二篇--行走的线条&&置顶导航栏

    一.行走的线条. 效果图(加载可能会慢一点儿,请稍等...): html代码: <div class="movingLines"> <img src=" ...

  8. css3特效第二篇--行走的线条&&置顶导航栏

    一.行走的线条. 效果图(加载可能会慢一点儿,请稍等...): html代码: <div class="movingLines"> <img src=" ...

  9. 自定义置顶TOP按钮

    简述一下,分为三个步骤: 1. 添加Html代码 2. 调整Css样式 3. 添加Jquery代码 具体代码如下: <style type="text/css"> #G ...

随机推荐

  1. Eclipse中JBOSS5.1无法启动的问题解决办法

    今天在Eclipse中启动JBoss 5.1时遇到这样的一个错误: …… ERROR [AbstractKernelController] Error installing to Instantiat ...

  2. File 操纵目录

    mkdir()   创建目录 不可及联创建    即父路径中一旦有不存在文件夹  即创建失败 mkdirs() 创建目录,及联创建 list() 列出目录内所包含的文件名(string) listFi ...

  3. Eclipse 和 MyEclipse控制台console不停的自动跳动,跳出来解决方案

    有时候Eclipse启动,控制台console不会自动跳出来,需要手工点击该选项卡才行,按下面的设置,可以让它自动跳出来(或不跳出来):由二种方法: 一.windows  ->   prefer ...

  4. QTabWidget 实现类似QQ聊天窗口(拖动分离出新的窗口)

    新版本的QQ聊天窗口可以实现拖动,分离出新的窗口.浏览器等软件也可以实现类似操作.所以心血来潮想用Qt实现类似的功能.想用QTabWidget直接实现是很难的,仔细阅读源码,发现QTabWidget内 ...

  5. Myeclipse 设定文件的默认打开方式

    Myeclipse 设定文件的默认打开方式.今天下载了一个properties的中文插件,希望.property的文件能默认以这个程序打卡.说一下设置方法. Window -> Preferen ...

  6. teamviewer无法启动

    在 Linux.Mac OS X和 Windows下都可以用,但在 Linux 下无法启动时怎么办? 笔者回家工作时,都会用 Teamviewer 连线到其他 Linux 桌面,但某天起 Teamvi ...

  7. office文档转pdf

    这里贴下代码吧,没啥好说的. using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

  8. WAMPServer 集成环境

    1.下载和安装 1.1下载 下载地址:http://www.wampserver.com/en/.由于官方地址是国外的网站可能下载会有些慢,也可以去第三方网站下载 1.2安装 安装文件如下图: 双击安 ...

  9. 《UNIX环境高级编程》笔记--read函数,write函数,lseek函数

    1.read函数 调用read函数从文件去读数据,函数定义如下: #include <unistd.h> ssize_t read(int filedes, void* buff, siz ...

  10. sed 技巧一例:特定位置插入

    通过一例子熟悉 sed 的运用 下面命令是在修改 ~/fs/install/nzos.conf 文件, 并在 env 第一次出现的地方再添加一行 env LXC_EXTRA_PORT=5556 sed ...