jQuery编程中的一些核心方法简介

调用 jQuery 对象的方法很简单:

$(‘h1‘).remove();

大多数 jQuery 方法都是像上面这样被调用的,这些方法都位于 $.fn 命名空间内,这些方法称为 jQuery 对象方法。

但是也有一些方法不需要依赖于选择器的结果集,这些方法位于 jQuery 命名空间内,这些方法称为 jQuery 核心方法。如果觉得不好理解,记住下面两条即可:

  1. 所有 jQuery 选择器的方法都位于 $.fn 命名空间内。
  2. $ 内的方法一般都是一些实用的功能性方法,这些方法不依赖选择器,这些方法的参数和返回值也都大不相同。

有些对象方法跟核心方法的名称还会相同,例如 $.fn.each 和 $.each,使用的时候需要格外注意。

jQuery 的 $ 命名空间中提供了很多实用方法:

$.trim(‘  lots of extra whitespace  ‘);

// 返回 ‘lots of extra whitespace‘

对数组和对象进行迭代:

$.each([ ‘foo‘, ‘bar‘, ‘baz‘ ], function(idx, val) {

console.log(‘element ‘ + idx + ‘is ‘ + val);

});

$.each({ foo : ‘bar‘, baz : ‘bim‘ }, function(k, v) {

console.log(k + ‘ : ‘ + v);

});

返回数组中某元素的索引,如果元素不存在则返回 -1

var myArray = [ 1, 2, 3, 5 ];

if ($.inArray(4, myArray) !== -1) {

console.log(‘找到了‘);

}

用一个对象去扩展另外一个对象:

var firstObject = { foo : ‘bar‘, a : ‘b‘ };

var secondObject = { foo : ‘baz‘ };

var newObject = $.extend(firstObject, secondObject);

console.log(firstObject.foo); // ‘baz‘

console.log(newObject.foo);  // ‘baz‘

如果不想改变第一个对象中的值,在 $.extend 的第一个参数中传入一个空对象即可:

var firstObject = { foo : ‘bar‘, a : ‘b‘ };

var secondObject = { foo : ‘baz‘ };

var newObject = $.extend({}, firstObject, secondObject);

console.log(firstObject.foo); // ‘bar‘

console.log(newObject.foo);  // ‘baz‘

改变函数的作用域:

var myFunction = function() { console.log(this); };

var myObject = { foo : ‘bar‘ };

myFunction(); // logs window object

var myProxyFunction = $.proxy(myFunction, myObject);

myProxyFunction(); // logs myObject object

再结合事件看如何改变函数的作用域:

var myObject = {

myFn : function() {

console.log(this);

}

};

$(‘#foo‘).click(myObject.myFn); // logs DOM element #foo

$(‘#foo‘).click($.proxy(myObject, ‘myFn‘)); // logs myObject

JavaScript 本身有类型检测的方法,jQuery 中也有,并且做得更好:

var myValue = [1, 2, 3];

// 用 JavaScript 的 typeof 操作符来判断类型

typeof myValue == ‘string‘; // false

typeof myValue == ‘number‘; // false

typeof myValue == ‘undefined‘; // false

typeof myValue == ‘boolean‘; // false

// 用恒等于 检测 null

myValue === null; // false

// 使用 jQuery 的方法来判断类型

jQuery.isFunction(myValue); // false

jQuery.isPlainObject(myValue); // false

jQuery.isArray(myValue); // true

向 HTML 元素添加额外的数据:

$(‘#myDiv‘).data(‘keyName‘, { foo : ‘bar‘ });

$(‘#myDiv‘).data(‘keyName‘); // { foo : ‘bar‘ }

所要添加的数据可以是任意类型:

$(‘#myList li‘).each(function() {

var $li = $(this), $div = $li.find(‘div.content‘);

$li.data(‘contentDiv‘, $div);

});

// 不需要再去找那些 div 了;

// 可以直接从 list 中读取出来

var $firstLi = $(‘#myList li:first‘);

$firstLi.data(‘contentDiv‘).html(‘new content‘);

调用 jQuery 对象的方法很简单:

?


1

$(‘h1‘).remove();

大多数 jQuery 方法都是像上面这样被调用的,这些方法都位于 $.fn 命名空间内,这些方法称为 jQuery 对象方法。

但是也有一些方法不需要依赖于选择器的结果集,这些方法位于 jQuery 命名空间内,这些方法称为 jQuery 核心方法。如果觉得不好理解,记住下面两条即可:

  1. 所有 jQuery 选择器的方法都位于 $.fn 命名空间内。
  2. $ 内的方法一般都是一些实用的功能性方法,这些方法不依赖选择器,这些方法的参数和返回值也都大不相同。
时间: 2024-08-05 18:35:09

jQuery编程中的一些核心方法简介的相关文章

java多线程编程中实现Runnable接口方法相对于继承Thread方法的优势

 java多线程创建方法http://blog.csdn.net/cjc211322/article/details/24999163  java创建多线程方法之间的区别http://blog.csdn.net/cjc211322/article/details/25000449 java多线程编程中实现Runnable接口方法相对于继承Thread方法的优势

编程中三种命名方法——匈牙利命名法、骆驼命名法、帕斯卡(pascal)命名法

代码风格是一个可重不重要的东西,虽然,不影响代码正确性,但是其实,非常的重要,通常在项目中,不能随便写代码,需要有一点的规范,命名法便是其中一个比较重要的一点. 通常我自己有一套命名法,结合匈牙利法(主要是数据类型这块,因为嵌入式,数据类型比较重要,毕竟资源比较少的),其次是其他两种方法结合,下面说说主要的三种命名法. 以下文字为转载的,说的比较清晰,很多人已经逐步抛弃匈牙利命名法,因为缩写不易懂,而且现在命名也不行定长度,不想以前,命名长度都是尽量短.时代在进步~ 一.匈牙利命名法: 广泛应用

jQuery ajax中的get请求方法汇总

$.get() Defination and Usage 从服务端以HTTP GET方式获取数据 Examples 请求test.php,但是忽略返回的数据 $.get("test.php"); 请求test.php且随着请求发送附加的数据(忽略返回的结果) $.get("test.php", { name:"Donald", town:"Ducktown" }); 请求test.php且传递数组数据到服务器(忽略返回的结果)

从类库中调用log4net的方法简介

大家在开发程序的时候,都会也必须用上日志功能.当前常用的日志工具可能就是log4net了.在当前基于框架的开发模式下,log4net都是在类库中调用(在核心服务类中作为一个服务供解决方案里的所有项目调用).在这种情况下常见的log4net调用设置显然是无法实现日志功能.经过实验,在完成以下几个步骤后,可以实现上述的功能:1.建立一个类库,在引用中加载log4net.dll:2.在AssemblyInfo.cs文件最后添加[assembly: log4net.Config.XmlConfigura

php中socket的使用 方法简介

一.开启socket phpinfo();查看是否开启了socket扩展,否则在php.ini中开启. 二.服务器端代码的写法 <?php error_reporting(E_ALL); set_time_limit(0); //ob_implicit_flush(); $address = '127.0.0.1'; $port = 10005; //创建端口 if( ($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false

编程中常用的数学方法以及常数

只是列举了一些比较常用的,具体的可以查看Math.h文件 算术函数: int rand():返回int型随机数 int random():返回long型随机数 abs:返回整形绝对值 int abs(int) float fabsf(float) double fabs(double) long double fabsl(long double) floor():返回不大于浮点数的最大整数 float floorf(float) double floor(double) long double

c# 编程中常用的一些方法

1.判断一个字符串是否全是数字 /// <summary> /// 判断字符串是否全是数字 /// </summary> /// <param name="str"></param> /// <returns></returns> public static bool IsNumber(string str) { if (str == null || str.Length == 0) return false; c

Cocos2d-x编程中的runOnUiThread方法和runOnGLThread方法剖析

本文对于runOnGLThread方法的分析主要目的是为了帮助我的课程"拇指接龙游戏"学员更好地理解EasyNDK这个开源框架的使用.借助于这个框架,实现Android JAVA端与Cococ2d-x C++端交互,以及iOS Objective-C端与Cococ2d-x C++端交互将变得异常容易----极大地减少了相关的JNI编程与Objecive-C编程的代码量.但是,在EasyNDK的Android版本示例中在Java主Activity端存在如下代码段: public void

jQuery Form 表单提交插件----Form 简介,官方文档,官方下载地址

 一.jQuery Form简介 jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易地.无侵入地升级HTML表单以支持Ajax.jQuery Form有两个核心方法 -- ajaxForm() 和 ajaxSubmit(), 它们集合了从控制表单元素到决定如何管理提交进程的功能.另外,插件还包括其他的一些方法: formToArray().formSerialize().fieldSerialize().fieldValue().clearForm().clearFields(