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. xp每天定时关机命令

    at 00:00 /every:M,T,W,Th,F,S,Su shutdown -s -t 120 能够把00:00改成你想要每天定时关机的时间,120是指关机倒计时的秒数,也能够更改 M,T,W, ...

  2. JFinal教程1——小白的第一个JFinal程序

    为了使小白能够完全的按步骤创建第一个JFinal应用并运行,笔者将以Java界最流行的Eclipse平台为例,搭建出所有基础教程中喜欢的Hello world应用. 1. JFinal简介 2. 小白 ...

  3. servlet 将输入内容通过拼接页面的方式显示出来

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. QVector 和vector的比较(QVector默认使用隐式共享,而且有更多的函数提供)

    QVector和vector的比较: Qvector默认使用隐式共享,可以用setSharable改变其隐式共享.使用non-const操作和函数将引起深拷贝.at()比operator[](),快, ...

  5. 服务列表 - Sina App Engine

    服务列表 - Sina App Engine 短信服务 新浪无线短信服务是由新浪无线提供的综合性短信服务. 使用服务 下载SDK: php 服务首页 方法 新浪无线短信服务是由新浪无线提供的综合性短信 ...

  6. 【剑指Offer学习】【面试题17 ::合并两个排序的链表】

    题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是依照递增排序的 链表结点定义例如以下: public static class ListNode { int value; List ...

  7. Java并发编程之闭锁CountDownLatch简单介绍

    闭锁相当于一扇门,在闭锁到达结束状态之前,这扇门一直是关闭着的,没有不论什么线程能够通过,当到达结束状态时.这扇门才会打开并容许全部线程通过.它能够使一个或多个线程等待一组事件发生. 闭锁状态包含一个 ...

  8. javascript笔记整理(window对象)

    浏览器对象模型 (BOM--Browser Object Model),window对象是BOM中所有对象的核心 A.属性 1.(位置类型-获得浏览器的位置) IE:window.screenLeft ...

  9. Writing a ServiceMain Function(使用RegisterServiceCtrlHandler函数)

    The following global definitions are used in this sample. C++   #define SVCNAME TEXT("SvcName&q ...

  10. perl 调用方法 子例程说明

    Perl does not provide any special syntax for class definitions Perl 不提供任何特殊的语法对于类的定义 A package is si ...