java script中所有不声明而直接使用的变量均为全局量,定义和使用函数时要注意闭包问题,一般将函数定义放到一个闭包中,变量均声明为局部变量。如
(funciton(){
var obj;//局部变量
v1 = 123;//全局变量
});
jQuery库添加了三个全局变量:jQuery,$两个相同,其实是jQuery.fn.init函数的对象
添加jQuery库可以使用Google CDN内容分发网络(速度更快,可以根据使用的地点选择最近的服务器),可以加载其提供的jQuery.js,本地服务器不需要保存jQuery库源码。
<script type="text/java script" src="http://www.google.com/jsapi">
<script type="text/java script">
google.load("jQuery","1.7.1")
jQuery用法
一、jQuery对象的方法:
var o = jQuery();
o.method();
二、jQuery自身方法:jQuery核心函数,Ajax,工具函数都是该用法
jQuery.method();
jQuery核心函数,
"http://www.w3.org/TR/html4/loose.dtd">
jQuery选择器练习
<script type="text/java script" src="jquery-1.7.1.js">
<script type="text/java script">
//jQuery的文档加载后执行java script方法
//jQuery(function($){});全局使用jQuery,传递$参数,保证引用多个java script库(如,Prototype)时不出变量冲突
jQuery(function($) {
//===================DOM对象与JQuery包装集===================
//通过document.getElementById(),document.getElementsByName()及document.getElementsByTagName()等取的就是DOM对象或DOM对象集,前者取的是对象,后者取得DOM对象集
var dom_obj = document.getElementById("text11");
var dom_obj = document.getElementsByName("text11")[0];
//var dom_obj = document.all["text11"];//在Quirks Mode下Firefox才有作用
//如果要使用JQuery提供的函数首先要构造JQuery包装集,通过$()返回的即是JQuery包装集(jQuery自定义的对象)
/*
* jQuery包装集“$”与"jQuery"一样都是调用如下函数返回
* "$===jQuery =" function (selector, context) {
* return new jQuery.fn.init(selector, context, rootjQuery);
* }
*/
var jquery_obj = $("#text11");
//返回是jQuery包装集对象,不是DOM对象
//===================JQuery包装集与DOM对象互相转换===================
//DOM对象不能使用JQuery属性方法,但DOM对象可以通过$()(这是jQuery一个核心函数)转换成JQuery包装集
var htmlStr = $(document.getElementById("text11")).val();
//JQuery包装集可以使用部分DOM对象的属性方法如.length,但也有个别属性方法不能使用如.value,可以获取对应DOM对象后进行操作
//要想根据jQuery包装集对象得到DOM对象,有以下方法
var dom_obj = $("#text11")[0];
var dom_obj = $("#text11").get(0);
var dom_obj = $("#text11").get()[0];
var text11_dom = $("#text11")[0];
//在each循环时或触发事件时的this也是DOM对象
$("#text11").click(function() {
this.value = "";
});
//===================$符号在JQuery中代表对JQuery对象的引用,JQuery的核心方法有四个===================
//jQuery(html[,ownerDocument]):根据HTML字符串动态创建Dom元素.
$("
").appendTo("body");
//jQuery( elements ):将一个或多个Dom对象封装为jQuery包装集,就是上面的DOM对象与JQuery包装集转换
//jQuery( callback ):$(document).ready()的简写方式$(function(){ alert("Hello!");});
//JQuery(selector[,context]):在指定范围内查找符合条件的JQuery包装集,context为查找范围,context可以是DOM对象集也可以是JQuery包装集
//在所有tr标签中查找id为text11元素的JQuery包装集
var text11_query=$("#text11","tr");
//===================jQuery选择器全解===================
//jQuery选择器可以使用全部的CSS选择器,以及XPath选择器
//===================1. 基础选择器 Basics===================
//根据标签名进行选择
var input_query=$("input");
//根据id值选取
var text11_query=$("#text11");
//根据class值进行选取
var text11_query=$(".