12招jQuery常用技巧

12招jQuery常用技巧
12招jQuery常用技巧

由于jQuery对象本身是一个集合。所以如果jQuery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。

1、关于页面元素的引用

通过jQuery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jQuery对象(集合对象),不能直接调用dom定义的方法。

2、jQuery对象与dom对象的转换

只有jQuery对象才能使用jQuery定义的方法。注意dom对象和jQuery对象是有区别的,调用方法时要注意操作的是dom对象还是jQuery对象。普通的dom 对象一般可以通过$()转换成jQuery对象。

如:$(document.getElementById(”msg”))则为jQuery对象,可以使用jQuery 的方法。

由于jQuery对象本身是一个集合。所以如果jQuery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。如:$(”#msg”) [0],

$(”div”).eq(1)[0],$(”div”).get()[1],$(”td”)[5]这些都是dom对象,可以使用dom中的方法,但不能再使用jQuery的方法。

以下几种写法都是正确的:

1.$("#msg”).html();

2.$("#msg”)[0].innerHTML;

3.$("#msg”).eq(0)[0].innerHTML;

4.$("#msg”).get(0).innerHTML;

3、如何获取jQuery集合的某一项

对于获取的元素集合,获取其中的某一项(通过索引指定)可以使用eq或get(n)方法或者索引号获取,要注意,eq返回的是jQuery对象,而 get(n)和索引返回的是dom元素对象。对于jQuery对象只能使用jQuery的方法,而dom对象只能使用dom的方法,如要获取第三个

元素的内容。有如下两种方法:

1.$("div”).eq(2).html(); //调用jQuery对象的方法

2.$("div”).get(2).innerHTML; //调用dom的方法属性

4、同一函数实现set和get

jQuery中的很多方法都是如此,主要包括如下几个:

1.$("#msg").html(); //返回id为msg的元素节点的html内容。

2.$("#msg").html("new content");

3.//将“new content" 作为html串写入id为msg的元素节点内容

中,页面显示粗体的new content

4.$("#msg").text(); //返回id为msg的元素节点的文本内容。

5.$("#msg").text("new content");

6.//将“new content" 作为普通文本串写入id为msg的元素节点

内容中,页面显示new content

7.$("#msg").height(); //返回id为msg的元素的高度

8.$("#msg").height("300″); //将id为msg的元素的高度设为300

9.$("#msg").width(); //返回id为msg的元素的宽度

10.$("#msg").width("300″); //将id为msg的元素的宽度设为300

11.$("input").val("); //返回表单输入框的value值

12.$("input").val("test"); //将表单输入框的value值设为test

13.$("#msg").click(); //触发id为msg的元素的单击事件

14.$("#msg").click(fn); //为id为msg的元素单击事件添加函数

同样blur,focus,select,submit事件都可以有着两种调用方法

5、集合处理功能

对于jQuery返回的集合内容无需我们自己循环遍历并对每个对象分别做处理,jQuery已经为我们提供的很方便的方法进行集合的处理。包括两种形式:

1.$("p”).each(function(i){this.style.color=['#f00','#0f0','#00f'

][ i ]})

2.//为索引分别为0,1,2的p元素分别设定不同的字体颜色。

3.$("tr”).each(function(i){this.style.backgroundColor=['#ccc','#

fff'][i%2]})

4.//实现表格的隔行换色效果

5.$("p”).click(function(){alert($(this).html())})

6.//为每个p元素增加了click事件,单击某个p元素则弹出其内容

6、扩展我们需要的功能

1.$.extend({

2.min: function(a, b){return a < b?a:b; },

3.max: function(a, b){return a > b?a:b; }

4.}); //为jQuery扩展了min,max两个方法

使用扩展的方法(通过“$.方法名”调用):

1.alert(”a=10,b=20,max=”+$.max(10,20)+”,min=”+$.min(10,20));

7、支持方法的连写

所谓连写,即可以对一个jQuery对象连续调用各种不同的方法。例如:

1.$("p”).click(function(){alert($(this).html())})

2..mouseover(function(){alert(’mouse over event’)})

3..each(function(i){this.style.color=['#f00','#0f0','#00f'][ i ]}

);

8、操作元素的样式

主要包括以下几种方式:

1.$("#msg").css("background"); //返回元素的背景颜色

2.$("#msg").css("background","#ccc") //设定元素背景为灰色

3.$("#msg").height(300); $("#msg").width("200″); //设定宽高

4.$("#msg").css({ color: “red", background: “blue" });//以名值

对的形式设定样式

5.$("#msg").addClass("select"); //为元素增加名称为select的

class

6.$("#msg").removeClass("select"); //删除元素名称为select的

class

7.$("#msg").toggleClass("select"); //如果存在(不存在)就删除(添

加)名称为select的class

9、完善的事件处理功能

jQuery已经为我们提供了各种事件处理方法,我们无需在html元素上直接写事件,而可以直接为通过jQuery获取的对象添加事件。如:

1.$(”#msg”).click(function(){alert(”good”)}) //为元素添加了单

击事件

2.$(“p”).click(function(i){this.style.color=['#f00','#0f0','#00

f'][ i ]})

3.//为三个不同的p元素单击事件分别设定不同的处理

jQuery中几个自定义的事件:

(1)hover(fn1,fn2):一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。当鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。

1.//当鼠标放在表格的某行上时将class置为over,离开时置为out。

2.$("tr”).hover(function(){

3.$(this).addClass(”over”);

4.,function(){

5.$(this).addClass(”out”);

6.});

(2)ready(fn):当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。

1.$(document).ready(function(){alert(”Load Success”)})

2.//页面加载完毕提示“Load Success”,相当于onload事件。与$(fn)等

(3)toggle(evenFn,oddFn): 每次点击时切换要调用的函数。如果点击了一个匹配的元素,则触发指定的第一个函数,当再次点击同一元素时,则触发指定的第二个函数。随后的每次点击都重复对这两个函数的轮番调用。

1.//每次点击时轮换添加和删除名为selected的class。

2.$("p”).toggle(function(){

3.$(this).addClass(”selected”);

4.},function(){

5.$(this).removeClass(”selected”);

6.});

(4)trigger(eventtype): 在每一个匹配的元素上触发某类事件。例如:

1.$("p”).trigger(”click”); //触发所有p元素的click事件

(5)bind(eventtype,fn),unbind(eventtype): 事件的绑定与反绑定

从每一个匹配的元素中(添加)删除绑定的事件。例如:

1.$("p").bind("click", function(){alert($(this).text());}); //为

每个p元素添加单击事件

2.$("p").unbind(); //删除所有p元素上的所有事件

3.$("p").unbind("click") //删除所有p元素上的单击事件

10、几个实用特效功能

其中toggle()和slidetoggle()方法提供了状态切换功能。如toggle()方法包括了hide()和show()方法。slideToggle()方法包括了slideDown()和slideUp 方法。

11、几个有用的jQuery方法

$.browser.浏览器类型:检测浏览器类型。有效参数:safari, opera, msie, mozilla。如检测是否ie:$.browser.isie,是ie浏览器则返回true。

$.each(obj, fn):通用的迭代函数。可用于近似地迭代对象和数组(代替循环)。如

1.$.each( [0,1,2], function(i, n){ alert( "Item #" + i + ": " + n

); });

等同于:

1.var tempArr=[0,1,2];

2.for(var i=0;i

3.alert("Item #"+i+": "+tempArr[ i ]);

4.}

也可以处理json数据,如

1.$.each( { name: "John", lang: "JS" }, function(i, n){ alert( "N

ame: " + i + ", Value: " + n ); });

结果为:

https://www.360docs.net/doc/9214524901.html,:name, Value:John

https://www.360docs.net/doc/9214524901.html,:lang, Value:JS

3.$.extend(target,prop1,propN):用一个或多个其他对象来扩展一个对象,

返回这个被扩展的对象。这是jQuery实现的继承方式。如:

4.$.extend(settings, options);

5.//合并settings和options,并将合并结果返回settings中,相当于

options继承setting并将继承结果保存在setting中。

6.var settings = $.extend({}, defaults, options);

7.//合并defaults和options,并将合并结果返回到setting中而不覆盖

default内容。

可以有多个参数(合并多项并返回)$.map(array, fn):数组映射。把一个数组中的项目(处理转换后)保存到到另一个新数组中,并返回生成的新数组。如:

1.var tempArr=$.map( [0,1,2], function(i){ return i + 4; });

2.tempArr内容为:[4,5,6]

3.var tempArr=$.map( [0,1,2], function(i){ return i > 0 ? i + 1 :

null; });

4.tempArr内容为:[2,3]

$.merge(arr1,arr2):合并两个数组并删除其中重复的项目。如:

1.$.merge( [0,1,2], [2,3,4] ) //返回[0,1,2,3,4]

$.trim(str):删除字符串两端的空白字符。如:

1.$.trim(" hello, how are you? "); //返回"hello,how are you? "

12、解决自定义方法或其他类库与jQuery的冲突

很多时候我们自己定义了$(id)方法来获取一个元素,或者其他的一些js类库如prototype也都定义了$方法,如果同时把这些内容放在一起就会引起变量方法定义冲突,jQuery对此专门提供了方法用于解决此问题。

使用jQuery中的jQuery.noConflict();方法即可把变量$的控制权让渡给第一个实现它的那个库或之前自定义的$方法。之后应用 jQuery的时候只要将所有的$换成jQuery即可,如原来引用对象方法$("#msg")改为jQuery("#msg")。如:

1.jQuery.noConflict();

2.// 开始使用jQuery

3.jQuery("div p").hide();

4.// 使用其他库的 $()

5.$("content").style.display = 'none';

50个实用的JQUERY案例

jquery案例 jquery案例1.如何创建嵌套的过滤器: 1.//允许你减少集合中的匹配元素的过滤器, 2.//只剩下那些与给定的选择器匹配的部分。在这种情况下, 3.//查询删除了任何没(:not)有(:has) 4.//包含class为“selected”(.selected)的子节点。 5..filter(":not(:has(.selected))") jquery案例2.如何重用元素搜索 1.var allItems=$("div.item"); 2.var keepList=$("div#container1div.item"); 3.//现在你可以继续使用这些jQuery对象来工作了。例如, 4.//基于复选框裁剪“keep list”,复选框的名称 5.//符合 6.

class names: 7.$(formToLookAt+"input:checked").each(function(){ 8.keepList=keepList.filter("."+$(this).attr("name")); 9.}); 10.
jquery案例3.任何使用has()来检查某个元素是否包含某个类或是元素: 1.//jQuery1.4.*包含了对这一has方法的支持。该方法找出 2.//某个元素是否包含了其他另一个元素类或是其他任何的 3.//你正在查找并要在其之上进行操作的东东。 4.$("input").has(".email").addClass("email_icon"); jquery案例4.如何使用jQuery来切换样式表 1.//找出你希望切换的媒体类型(media-type),然后把href设置成新的样式表。 2.$('link[media='screen']').attr('href','Alternative.css'); jquery案例5.如何限制选择范围(基于优化目的): 1.//尽可能使用标签名来作为类名的前缀, 2.//这样jQuery就不需要花费更多的时间来搜索 3.//你想要的元素。还要记住的一点是, 4.//针对于你的页面上的元素的操作越具体化, 5.//就越能降低执行和搜索的时间。

jQuery常用方法中文解析

jQuery常用方法中文解析 jQuery设计思想 【目录】 一、选择网页元素 二、改变结果集 三、链式操作 四、元素的操作:取值和赋值 五、元素的操作:移动 六、元素的操作:复制、删除和创建 七、工具方法 八、事件操作 九、特殊效果 一、选择网页元素 jQuery的基本设计和主要用法,就是"选择某个网页元素,然后对其进行某种操作"。这是它区别于其他函数库的根本特点。使用jQuery的第一步,往往就是将一个选择表达式,放进构造函数jQuery()(简写为$),然后得到被选中的元素。选择表达式可以是CSS选择器: $(document) //选择整个文档对象 $('#myId') //选择ID为myId的网页元素 $('div.myClass') // 选择class为myClass的div元素 $('input[name=first]') // 选择name属性等于first的input元素 也可以是jQuery特有的表达式: $('a:first') //选择网页中第一个a元素 $('tr:odd') //选择表格的奇数行 $('#myForm :input') // 选择表单中的input元素 $('div:visible') //选择可见的div元素 $('div:gt(2)') // 选择所有的div元素,除了前三个 $('div:animated') // 选择当前处于动画状态的div元素

二、改变结果集 如果选中多个元素,jQuery提供过滤器,可以缩小结果集: $('div').has('p'); // 选择包含p元素的div元素 $('div').not('.myClass'); //选择class不等于myClass的div元素 $('div').filter('.myClass'); //选择class等于myClass的div元素 $('div').first(); //选择第1个div元素 $('div').eq(5); //选择第6个div元素 有时候,我们需要从结果集出发,移动到附近的相关元素,jQuery也提供了在DOM树上的移动方法: $('div').next('p'); //选择div元素后面的第一个p元素 $('div').parent(); //选择div元素的父元素 $('div').closest('form'); //选择离div最近的那个form父元素 $('div').children(); //选择div的所有子元素 $('div').siblings(); //选择div的同级元素 三、链式操作 选中网页元素以后,就可以对它进行某种操作。jQuery允许将所有操作连接在一起,以链条的形式写出来,比如: $('div').find('h3').eq(2).html('Hello'); 分解开来,就是下面这样: $('div') //找到div元素 .find('h3') //选择其中的h3元素 .eq(2) //选择第3个h3元素 .html('Hello'); //将它的内容改为Hello 这是jQuery最令人称道、最方便的特点。它的原理在于每一步的jQuery操作,返回的都是一个jQuery对象,所以不同操作可以连在一起。jQuery还提供了.end()方法,使得结果集可以后退一步: $('div').find('h3').eq(2).html('Hello').end() //退回到选中所有的h3元素的那一步.eq(0) //选中第一个h3元素.html('World'); //将它的内容改为World

jQuery入门教程(很不错)

jQuery入门[1]-构造函数 https://www.360docs.net/doc/9214524901.html,/archive/2008/03/05/1091816.html jQuery优点 ?体积小(v1.2.3 15kb) ?丰富的DOM选择器(CSS1-3 + XPath) ?跨浏览器(IE6,FF,Safari,Opera) ?链式代码 ?强大的事件、样式支持 ?强大的AJAX功能 ?易于扩展,插件丰富 jQuery的构造函数接收四种类型的参数: jQuery(expression,context) jQuery(html) jQuery(elements) jQuery(fn) 第一种根据表达式(ID,DOM元素名,CSS表达式,XPath表达式)找出文档中的元素,并组装成一个jQuery对象返回。 DEMO: DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.360docs.net/doc/9214524901.html,/TR/xhtml1/DTD/xhtml1-transitional.dtd"> jQuery basic title> <style type="text/css"> .selected { background-color:Yellow; } style> <script src="../scripts/jquery-1.2.3.intellisense.js" type="text/javascript">script> head> <body> <h3>jQuery构造函数h3> <ul> <li>jQuery(expression,context)li> <li>jQuery(html)li> <li>jQuery(elements)li> <li>jQuery(fn)li> ul> <script type="text/javascript"></p><h2>jQuery学习心得总结(必看篇)</h2><p>下面小编就为大家带来一篇jQuery学习心得总结(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。 jQuery 对象 •jQuery 对象就是通过jQuery 包装DOM 对象后产生的对象。 •jQuery 对象是jQuery 独有的。 •只有jQuery 对象才能使用jQuery 的方法,在jQuery 对象中无法使用DOM 对象的任何方法,反之DOM 对象也无法使用任何jQuery 的方法。 •约定:如果获取的是jQuery 对象,那么要在变量前面加上$ •jQuery 对象中封装了多个DOM 对象,同时jQuery 对象是类数组对象 •数组与类数组对象的区别 1.数组的类型是Array 2.类数组对象的类型是Object DOM 对象转jQuery 对象 •使用$()将DOM 对象包装起来,就可以转换成jQuery 对象 var item = document.getElementsByTagName('ul')[0], // DOM对象   $item = $(item); // jQuery对象 jQuery 对象转换为DOM 对象 jQuery 对象通过jQuery 提供的get(index)方法,得到对应的DOM 对象 var $ul = $('ul'),   ul = $ul.get(0); jQuery 对象是一个类数组对象,可以通过[] 方式,得到对应的DOM 对象。 类数组对象 类数组对象本质就是一个对象,只不过存储方式类似于数组的结构 •arguments 对象---- 接受函数实参的个数 •jQuery 对象---- 底层就是dom 对象 属性 •length 属性(数组的长度| 元素的个数) 方法 •get(index):根据index 放回对应的dom 对象 •eq(index):根据index 返回对应的jQuery 对象 •index():查找元素的索引值 ready 和onlaod 的区别 ready 1.具有简写方式 2.在一个HTML 页面中允许出现多个 3.加载完DOM 结构就执行 4.执行速度快 onload 1.没有简写方式 2.在一个HTML 页面中只能使用一个 3.需要等页面所有资源加载完才执行 4.执行速度比ready 慢</p><h2>60个实用的jQuery代码片段</h2><p>60个实用的jQuery代码片段目录 1. 创建一个嵌套的过滤器 2. 重用你的元素查询 3. 使用has()来判断一个元素是否包含特定的class或者元素 4. 使用jQuery切换样式 5. 限制选择的区域 6. 如何正确使用ToggleClass 7. 设置IE指定的功能 8. 使用jQuery来替换一个元素 9. 验证一个元素是否为空 10. 在无序的set中查找一个元素的索引 11. 绑定一个函数到一个事件 12. 添加HTML到一个元素 13. 创建元素时使用对象来定义属性 14. 使用过滤器过滤多属性 15. 使用jQuery预加载图片 16. 设置任何匹配一个选择器的事件处理程序 17. 找到被选择到的选项(option)元素 18. 隐藏包含特定值的元素 19. 自动的滚动到页面特定区域 20. 检测各种浏览器</p><p>21. 替换字符串中的单词 22. 关闭右键的菜单 23. 定义一个定制的选择器 24. 判断一个元素是否存在 25. 使用jQuery判断鼠标的左右键点击 26. 显示或者删除输入框的缺省值 27. 指定时间后自动隐藏或者关闭元素(1.4支持) 28. 动态创建元素到DOM 29. 限制textarea的字符数量 30. 为函数创建一个基本测试用例 31. 使用jQuery克隆元素 32. 测试一个元素在jQuery中是否可见 34. 使用特定名字的元素对应的值生成一个数组 35. 剔除元素中的HTML 36. 使用closest来得到父元素 37. 使用firebug来记录jQuery事件 38. 点击链接强制弹出新窗口 39. 点击链接强制打开新标签页 40. 使用siblings()来处理同类元素 41. 选择或者不选页面上全部复选框 42. 基于输入文字过滤页面元素 43. 取得鼠标的X和Y坐标</p><h2>5个最常用的jQuery图表类库插件</h2><p>5个最常用的jQuery图表类库插件 目前对于简单快速的开发图的需要使得大家需要找到一种相对简单的方式来开发互动的图表。jQuery和其他js类库使得我们可以更容易的在(X)HTML中访问数据的呈现。 本文中我们将介绍目前5种图表类库能够不同程度满足简答到复杂的图表展现需求。大多数都是免费或者是针对个人免费的类库。 Graphup是一中非常轻量级的灵活的jQuery(v1.4+)插件用来美化你的数据表。它能够使用颜色,柱状图及其气饱来有效的展现你的数据。 ?支持众多选项–选择数据清除器和一个油漆工具:填充,柱状,气饱图;配置小数点(支持句号或者逗号);定制颜色表及其CSS类;更多其他 ?轻量级–整个插件只有4kb ?可扩展–你可以很容易的创建你自己的清除器和油漆工具或者颜色表。而且,拥有一个callback来执行上色前对单元格的任何操作。非常灵活,无限可能!大家可以产看演示?功能增强–你最初的表仍旧可以查看即时没有javascript ?文档很全- live examples and documentation. 兼容性:Chrome 5, FireFox 2, FireFox 3, IE7, IE8, Opera, Safari 如果你想把一张表里的内容以图形化展示出来的话,那么这个插件将是最好的展示工具。 他提供了不同类型的图标比如柱状图,饼图,面积图,折线图</p><p>演示实例 支持的图表:柱状图,饼图,面积图,折线图</p><p>系统需求:jQuery,exanvas(已包括) 浏览器支持:IE6,7,8, Firefox 2, firefox 3.5, Safari 3, 4, Opera 9. HTML5 canvas在IE中不支持但是Google维护了一个类库能将Canvas翻译成VML,这样可以允许在任意版本IE中运行 演示地址: https://www.360docs.net/doc/9214524901.html,/examples/charting_v2/index_2.ph p 授权类型:MIT and GPL licenses highcharts是非常棒的一个jQuery插件,简单来说highcharts和大多数的浏览器都兼容,甚至是iphone。支持很多类型的图表。并且是动态的插件,你可以轻松在创建图表后添加,删除,修改数列,轴或者点,并且可以从外部加载文件数据,同时支持提示条,这样你可以轻松的查看图表中的详细内容。最后还支持缩放和翻转。 演示实例</p><h2>jQuery常用功能大全</h2><p>jQuery常用功能大全 1、关于页面元素的引用 通过jquery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery 对象(集合对象),不能直接调用dom定义的方法。 2、jQuery对象与dom对象的转换 只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象。 普通的dom对象一般可以通过$()转换成jquery对象。 如:$(document.getElementByIdx_x("msg"))则为jquery对象,可以使用jquery的方法。 由于jquery对象本身是一个集合。所以如果jquery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。 如:$("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]这些都是dom对象,可以使用dom中的方法,但不能再使用Jquery的方法。 以下几种写法都是正确的: $("#msg").html(); $("#msg")[0].innerHTML; $("#msg").eq(0)[0].innerHTML; $("#msg").get(0).innerHTML; 3、如何获取jQuery集合的某一项 对于获取的元素集合,获取其中的某一项(通过索引指定)可以使用eq或get(n)方法或者索引号获取,要注意,eq返回的是jquery 对象,而get(n)和索引返回的是dom元素对象。对于jquery对象只能使用jquery的方法,而dom对象只能使用dom的方法,如要获取第三个<div>元素的内容。有如下两种方法: $("div").eq(2).html(); //调用jquery对象的方法$("div").get(2).innerHTML; //调用dom的方法属性</p><h2>jQuery常用插件收集</h2><p>jQuery常用插件收集 参与人员: 声明:以下资源经来源于网络,为了方便自己和各位jQuery爱好者对常用jQuery插件的查找,便将自己收集的jQuery插件进行分类整理,与大家共同分享,如果你知道更好的jQuery插件,可以告诉大家,也可以邮件给我,我来整理。</p><p>目录 AutoComplete搜索 (3) lightbox图片展示 (4) 文字特效 (9) Lodging (9) 编辑器 (10) Picker调色板 (11) Grid表格数据 (11) Tabs (13) 提示框 (14) Portlets (15) 拖放插件 (15) Form (15) menu菜单 (18) 文件上传控件 (20) tree树 (20) windows弹出框 (22)</p><p>AutoComplete搜索 ?AutoComplete-JQuery jQuery插件易于集成到现在的表单中(Form)。 主页:http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/ 示例:http://jquery.bassistance.de/autocomplete/demo/ ?Facebook like Autocomplete 基于jQuery开发,类似于FaceBoox提供的AutoCompleter。 主页:http://web2ajax.fr/examples/facebook_searchengine/ ?jQuery Autocomplete Mod jQuery Autcomplete插件。能够限制下拉菜单显示的结果数。 主页:https://www.360docs.net/doc/9214524901.html,/workshop/jquery/autocomplete.htm ?jqac 基于Jquery开发的Autocomplete插件。具有易于使用,配置简单,既可以利用Ajax读取数据也可以直接从本地获取数据。</p><h2>jquery学习总结(超级详细)</h2><p>window.onload $(document).ready() 执 行时机必须等待网页中所有的内容加载完毕后(包括 图片)才能执行 网页中所有DOM结构绘制完毕后就 执行,可能DOM元素关联的东西并 没有加载完 编写个数不能同时编写多个,以下代码无法正确执行: window.onload =function({alert("test1");}window.onload = function(){alert("test2");}结果只会输出 "test2" 能同时编写多个 简 化写法无 $(document).ready(function(){}); 可以简写成$(function(){}); 一、选择网页元素 jQuery的基本设计和主要用法,就是"选择某个网页元素,然后对其进行某种操作"。这是它区别于其他函数库的根本特点。 使用jQuery的第一步,往往就是将一个选择表达式,放进构造函数jQuery()(简写为$),然后得到被选中的元素。 选择表达式可以是CSS选择器: $(document)//选择整个文档对象 $('#myId')//选择ID为myId的网页元素 $('div.myClass')//选择class为myClass的div元素 $('input[name=first]')//选择name属性等于first的input元素 也可以是jQuery特有的表达式: $('a:first')//选择网页中第一个a元素 $('tr:odd')//选择表格的奇数行 $('#myForm :input')//选择表单中的input元素 $('div:visible') //选择可见的div元素 $('div:gt(2)')//选择所有的div元素,除了前三个 $('div:animated')//选择当前处于动画状态的div元素</p><h2>Jquery优势介绍</h2><p>Jquery优势介绍 1、轻量级 JQuery非常轻巧,采用Dean Edwards编写的Packer压缩后,大小不到30KB,如果使用Min版并且在服务器端启用Gzip压缩后,大小只有18KB。 2、强大的选择器 JQuery允许开发者使用从CSS1到CSS3几乎所有的选择器,以及JQuery独创的高级而且复杂的选择器,另外还可以加入插件使其支持XPath选择器,甚至开发者可以编写属于自己的选择器。由于JQuery支持选择器这一特性,因此有一定CSS经验的开发人员可以很容易的切入到JQuery的学习中来。 3、出色的DOM操作的封装 JQuery封装了大量常用的DOM操作,使开发者在编写DOM操作相关程序的时候能够得心应手。JQuery轻松地完成各种原本非常复杂的操作,让JavaScript新手也能写出出色的程序。 4、可靠的事件处理机制 JQuery的事件处理机制吸收了JavaScript专家Dean Edwards编写的事件处理函数的精华,是的JQuery在处理事件绑定的时候相当可靠。在预留退路、循序渐进以及非入侵式编程思想方面,JQuery也做得非常不错。 5、完善的Ajax JQuery将所有的Ajax操作封装到一个函数$.ajax()里,使得开发者处理Ajax的时候能够专心处理业务逻辑而无需关心复杂的浏览器兼容性和XMLHttpRequest对象的创建和使用的问题。 6、不污染顶级变量 JQuery只建立一个名为JQuery的对象,其所有的函数方法都在这个对象之下。其别名$也可以随时交流控制权,绝对不会污染其他的对象。该特性是JQuery可以与其他JavaScript库共存,在项目中放心地引用而不需要考虑到后期的冲突。</p><h2>50个实用的jquery案例</h2><p>1. 如何创建嵌套的过滤器: 1.//允许你减少集合中的匹配元素的过滤器, 2.//只剩下那些与给定的选择器匹配的部分。在这种情况下, 3.//查询删除了任何没(:not)有(:has) 4.//包含class为“selected”(.selected)的子节点。 5..filter(":not(:has(.selected))") 2. 如何重用元素搜索 1.var allItems = $("div.item"); 2.var keepList = $("div#container1 div.item"); 3.//现在你可以继续使用这些jQuery对象来工作了。例如, 4.//基于复选框裁剪“keep list”,复选框的名称 5.//符合 6.< DIV >class names: 7.$(formToLookAt + " input:checked").each(function() { 8. keepList = keepList.filter("." + $(this).attr("name")); 9.}); 10.< /DIV> 3. 任何使用has()来检查某个元素是否包含某个类或是元素: 1.//jQuery 1.4.*包含了对这一has方法的支持。该方法找出 2.//某个元素是否包含了其他另一个元素类或是其他任何的 3.//你正在查找并要在其之上进行操作的东东。 4.$("input").has(".email").addClass("email_icon"); 4. 如何使用jQuery来切换样式表 1.//找出你希望切换的媒体类型(media-type),然后把href设置成新的样式表。 2.$('link[media='screen']').attr('href', 'Alternative.css'); 5. 如何限制选择范围(基于优化目的): 1.//尽可能使用标签名来作为类名的前缀, 2.//这样jQuery就不需要花费更多的时间来搜索 3.//你想要的元素。还要记住的一点是, 4.//针对于你的页面上的元素的操作越具体化, 5.//就越能降低执行和搜索的时间。 6.var in_stock = $('#shopping_cart_items input.is_in_stock'); <ul id="shopping_cart_items"> <li><input type="radio" value="Item-X" name="item" class="is_in_stock" /> Item X</li></p><h2>jquery常用的选择器整理</h2><p>jquery: 基本的选择器: $('#id').css('color','blue');//根据id属性为id,设置css样式颜色设置成蓝色 $('h2').css('background-color','pink'); $('input').css('width','500px'); $('.apple').css('background-color','lightgreen');//class属性值查找 $('*').css('background-color','gray');//通配符 $('h2,#usertel,#userqq').css('color','lightblue');//联合选择器 层次选择器: $('div span');//在div内部获得span节点,不考虑层次,只获得div内第一个span节点,,注意不考虑层次 $('div > span')//在div内部获得子元素span节点 $('div+span')//在div后边获得紧紧挨着的第一个兄弟关系的span节点,获得的是span节点 $('div~span')//在div后边后边获得全部兄弟关系的span节点 并且选择器: $('li').css('color','red'); $('li:first');//:first第一个 :last 最后一个 $('li:eq(3)').css('color','red')//eq(下标索引号码) 获得节点的下标索引值与给定索引值相等 gt(索引号) great than 节点索引值,大于某个范围 lt(索引值) less than 节点索引值,小于某个范围 $('li:gt(5)').css('background-color','pink'); $('li:lt(5)').css('background-color','orange'); :even 匹配到下标索引值为偶数的节点 :odd 匹配到下标索引值为奇数的节点</p><h2>jQuery选择器种类</h2><p>jQuery选择器种类 由于经常使用jQuery,但是其中的很多选择器又不太能够熟练记牢使用,所以趁着上周有人分享,我再仔细的把jQuery的选择器过一遍,争取一次拿下,以后做到运用自如。jQuery选择器主要来分可以分为三种:(1)基本选择器(2)层次选择器(3)过滤选择器(4) 表单选择器 1、基本选择器 基本选择器主要就是比较常见和常用的集中,是必须要掌握的。 #ID id选择器返回一个对象$("#div") .class类选择器返回集合$(".content") Element 标签选择器返回集合$("input") * 匹配所有元素返回集合$("*") selector1,selector2,selector3,....合并每个选择器匹配的元素,返回集合$("#div,.class,input") 2、层次选择器(主要是选择层次下面的元素) $("E F") 选择E元素中的所有F后代元素(注意:是子孙元素) 返回集合 $("P>C") 选择P元素下的C子元素(注意:是子元素)返回集合 $("P+N") 选择P元素后的相邻元素(即下一个兄弟元素),和$("P").next("N")方法执行效果相同 $("P~S") 选择P元素之后的所有S兄弟元素,和$("P").nextAll("S")方法执行效果相同,<SPAN style="COLOR: #ff0000">另pre()方法和next()方法相对。</SPAN>preAll()和nextAll()相对。 注意siblings()方法和nextAll()方法的区别:siblings()是所有前后的兄弟元素,nextAll()是所有后面的兄弟元素 第三和第四个选择器常常用后面的写法代替</p><h2>前端编程提高之旅 jQuery常见特效</h2><p>前端编程提高之旅(二)----网站常见特效的jquery 实现 时间 2014-08-09 23:11:11 CSDN博客原 文https://www.360docs.net/doc/9214524901.html,/yingyiledi/article/details/38460189 最好的编程语言是逻辑,前端各种交互特效的实现多可以用jquery实现,特效可以纷飞,内在逻辑则基本不变。这一篇文章主要介绍jquery实现常见特效背后的逻辑。 1.通过类名获取元素集合 首先来看一个js原生代码不支持的方法,通过类来获取元素集合。document.getElementsByClassName=function(classname){ var retnode = []; var myclass = new RegExp('\\b'+classname+'\\b');//匹配类名 var elem = this.getElementsByTagName('*');//得到所有元素 for (var j = 0; j < elem.length; j++) { var classes = elem[j].className; if (myclass.test(classes)){ retnode.push(elem[j]); } } return retnode; }//通过遍历整个文档元素类名,返回所有指定类名的数组</p><p>逻辑思路: 通过构造一个类名的正则表达式,选取所有标签,并通过正则表达式与所有标签类名属性进行匹配,从而返回一个类名数组,实现通过类名得到元素集合的目标。 实现这个方法的同时,也给在不使用jquery的情况下,选取特定序数的元素提供了便利。 2.二级联动菜单的构造 $("#select1").change( function() { //侦测一级菜单的change事件 var id = $("#select1").val(); if(id == 1){ //通过id判断二级菜单 $.get('index.php', null, function(data){ //get方式传值 $("span").empty(); //清空标签 $("span").append("<select><option>济南</opton><option>青岛</opton><option>临沂</opton></select>"); //填充对应的二级菜单 }); }else{ $.get('index.php', null, function(data){ //get方式传值 $("span").empty(); //清空标签 $("span").append("<select><option>郑州</opton><option>安阳</opton><option>洛阳</opton></select>"); //填充对应的二级菜单 }); } });</p><h2>基于jQuery 常用控件收集</h2><p>Horizontal accordion: jQuery 基于jQuery开发,非常简单的水平方向折叠控件。 Horizontal accordion: jQuery jQuery-Horizontal Accordion 具有XBOX360 blade界面风格的水平方向Accordion。 jQuery-Horizontal Accordion AutoComplete-JQuery jQuery插件易于集成到现在的表单中(Form)。 AutoComplete-JQuery Facebook like Autocomplete 基于jQuery开发,类似于FaceBoox提供的AutoCompleter。 Facebook like Autocomplete jQuery Autocomplete Mod jQuery Autcomplete插件。能够限制下拉菜单显示的结果数。 jQuery Autocomplete Mod jqac 基于Jquery开发的Autocomplete插件。具有易于使用,配置简单,既可以利用Ajax读取数据也可以直接从本地获取数据。 jqac jQuery Tag Suggestion 类似于https://www.360docs.net/doc/9214524901.html,提供的tag suggesting功能。 jQuery Tag Suggestion Autocomplete-jQuery ajax 利用jQuery(Ajax),PHP和MySQL开发的AutoCompleter。</p><p>Autocomplete-jQuery ajax jQuery.Suggest 跨浏览器支持,基于jQuery开发的Autocomplete library。 jQuery.Suggest Autocomplete- jQuery plugin 一个jQuery Autocompleter,提供缓存选项来限制对服务器的请求。 Autocomplete- jQuery plugin jquery-aop 为JavaScript增加面向方面编程特性的jQuery插件。它能给任何函数添加Advices(Before、After与Around)。 jquery-aop jQuery Pagination jQuery分页插件 jQuery Pagination Facebox Facebox是一个基于jQuery,Facebook-style的lightbox。能够展示示images,divs或者整个远程页面。 Facebox jwysiwyg WYSIWYG jQuery插件。整个编辑器文件大小只有17Kb。 jwysiwyg Flexigrid Flexigrid是一个类似于Ext Gird,但基于jQuery开发的Grid。它具有的功能包括:可以调整列宽,合并列标题,分页,排序,显示/隐藏表格等。Flexigrid 显示的数据能够通过Ajax获取或者从一个普通的表格转换。</p><h2>jQueryUI常用功能实战</h2><p>一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案, 即使你会使用jQuery也能在阅读中发现些许秘籍. 本文是实战篇. 使用jQueryUI完成制作网站的大部分常用功能. 二.前言 经过公司内部收集, 整理了一些经常使用javascript实现的功能. 实现这些功能的主角不是让人眼花缭乱的jQuery插件, 而是jQuery UI. 如果你还在为了一个小小的特效而去下载并安装插件, 发现Bug还没有人替你解决. 记住插件是我们没有办法的最后选择. 使用插件有太多的坏处: 1.不利于维护 2.增加页面大小 3.不利于成员间交流共享,具有学习成本. 4.不够健壮, 不能保证插件版本一直更新并修复所有问题. 下面就引入今天的主角:jQuery UI 三.jQuery UI jQuery UI 是jQuery 的一部分, 是在jQuery之上的一套专门用于UI交互的类库. 使用jQuery UI 可以实现底层交互, 各种高级特效, 动画, 并且可定制主题. 我们可以用它轻松的构建高度交互的Web应用程序. 官方首页: https://www.360docs.net/doc/9214524901.html,/ 下载: https://www.360docs.net/doc/9214524901.html,/download 示例和文档: https://www.360docs.net/doc/9214524901.html,/demos/</p><p>皮肤: https://www.360docs.net/doc/9214524901.html,/themeroller/ jQuery UI 的在线网站十分强大. 首先就是在下载时可以组装自己想要的功能定制下载: 并且针对各种控件不仅提供了详细的参数说明和实例, 还可以随时更换实例的皮肤:</p><h2>jquery常用小功能总结</h2><p>1. 禁止右键点击 $(document).ready(function(){ $(document).bind("contextmenu",function(e){ return false; }); }); 2. 隐藏搜索文本框文字 点击时隐藏搜索栏中的文字 $(document).ready(function() { $("input.text1").val("Enter your search text here"); textFill($('input.text1')); }); function textFill(input){ //input focus text function var originalvalue = input.val(); input.focus( function(){ if( $.trim(input.val()) == originalvalue ){ input.val(''); } }); input.blur( function(){ if( $.trim(input.val()) == '' ){ input.val(originalvalue); } }); } 3. 在新窗口中打开链接 页面中所有链接都在新窗口中打开 $(document).ready(function() { //Example 1: Every link will open in a new window $('a[href^="http://"]').attr("target", "_blank"); //Example 2: Links with the rel="external" attribute will only open in</p><h2>https://www.360docs.net/doc/9214524901.html,yout.js常用属性</h2><p>jQuery https://www.360docs.net/doc/9214524901.html,yout Plug-in 官方站点:https://www.360docs.net/doc/9214524901.html,/ 必须的文件是,jquery.js,jquery-ui.js,还有就是这个插件的js。但在研究的过程中发现了一个问题,在官网下载的js是有问题的,甚至性能上都有问题。要下载官网示例中使用的js,切记。。地址:http: //https://www.360docs.net/doc/9214524901.html,/lib/js/https://www.360docs.net/doc/9214524901.html,yout-latest.js 把必要的js引入后,其实就可以正常运行了,参见官方最简单的那个示例,如下: <script src="js/jquery-1.4.2.min.js"type="text/javascript"></script> <script src="js/jquery-ui-1.8.4.custom.min.js"type="text/javascript"></script> <script src="js/https://www.360docs.net/doc/9214524901.html,yout-latest.js"type="text/javascript"></script> <SCRIPT type="text/javascript"> $(document).ready(function() { $('body').layout({ applyDefaultStyles: true}); }); </SCRIPT> <DIV class="ui-layout-center">Center</DIV> <DIV class="ui-layout-north">North</DIV> <DIV class="ui-layout-south">South</DIV> <DIV class="ui-layout-east">East</DIV> <DIV class="ui-layout-west">West</DIV> $(function(){ var myLayout =$("body").layout( { applyDefaultStyles: true,//应用默认样式 scrollToBookmarkOnLoad:false,//页加载时滚动到标签 showOverflowOnHover:false,//鼠标移过显示被隐藏的,只在禁用滚动条时用。 north__closable:false,//可以被关闭 north__resizable:false,//可以改变大小 north__size:50,//pane的大小 spacing_open:8,//边框的间隙 spacing_closed:60,//关闭时边框的间隙 resizerTip:"可调整大小",//鼠标移到边框时,提示语 //resizerCursor:"resize-p" 鼠标移上的指针样式 resizerDragOpacity:0.9,//调整大小边框移动时的透明度 maskIframesOnResize:"#ifa",//在改变大小的时候,标记iframe(未通过测试)sliderTip:"显示/隐藏侧边栏",//在某个Pane隐藏后,当鼠标移到边框上显示 的提示语。 sliderCursor:"pointer",//在某个Pane隐藏后,当鼠标移到边框上时的指针样式。</p><h2>高级jquery常用用法总结</h2><p>0、总述 jQuery框架提供了很多方法,但大致上可以分为3大类:获取jQuery对象的方法、在jQuery对象间跳转的方法,以及获取jQuery 对象后调用的方法 其中第一步是怎样获取jQuery对象。大致来说,是通过最核心的$()方法,将页面上的元素(或者在页面上不存在的html片段)包装成jQuery对象。 $()方法里面支持的语法又包括3大类,分别是表达式(包括类表达式.,id表达式#,元素表达式等)、符号(包括后代符号space,next符号+等)、过滤器(包括:过滤器和[]过滤器)。 通过以上3种的组合,“查询”得到想要操作的元素或者元素集合,作为$()的参数,得到jQuery对象(或者jQuery对象的集合) 第二步是在jQuery对象间的跳转。也就是说,已经得到了一个jQuery对象,但是并不是想要的,那么可以通过一系列的跳转方法,比如parent()、next()、children()、find()等,或者过滤筛选的方法,比如eq()、filter()、not()等,来得到最终想要操作的jQuery 对象。 用跳转和过滤方式得到的jQuery结果,往往通过比较复杂的表达式组合,可以达到同样的目的。 比如说$("div").eq(3),也可以用$("div:eq(3)")达到同样的目的。 又比如说$("div").find("span"),可以用$("div span")取到同样的元素。 方法是很灵活的,要根据具体的情况来选择。一般来说,HTML页面写得越规范,使用jQuery就越简单 还有一种情况,在得到了jQuery()对象之后,想要判断其是否满足条件,那么可以调用is()、hasClass()等方法,返回一个boolean 值,进行后续的判断。这类方法也可以归到这类。 第三步是在获取准确的jQuery对象之后,调用其上的各种方法,来进行操作。这一步反而是比较简单的了。 后面就是对jQuery框架各种方法的简要介绍,更详细的内容,还是以官方API为准 1、$(...) $() 一切的核心,可以跟4种参数 $(expression),比如$("#id")、$(".class")等,返回jQuery对象,或者jQuery对象的集合 $(html),比如$("<span>hello world</span>"),返回jQuery对象,或者jQuery对象的集合 $(element),比如$(document.body),返回jQuery对象,或者jQuery对象的集合 $(*),所有元素 2、jQuery Object Accessors jQuery.index(element),返回该jQuery对象在集合中的索引 jQuery.each(function),遍历jQuery对象集合,在每个对象上执行function函数,function callback(index, domElement){this}; jQuery.size(),返回jQuery对象集合的大小 jQuery.length,相当于size()方法 jQuery.get(),获取原生DomElement对象的Array jQuery.get(index),获取原生DomElement对象 jQuery.eq(position),获取jQuery对象集合中的一个jQuery对象 3、Data相关方法 jQuery.data(name)</p></div> <div class="rtopicdocs"> <div class="coltitle">相关主题</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="5305540"><a href="/topic/5305540/" target="_blank">jquery常用</a></li> </ul> </div> </div> </div> </div> <div id="rightcol" class="viewcol"> <div class="coltitle">相关文档</div> <ul class="lista"> <li><a href="/doc/1e1650799.html" target="_blank">60个实用的jQuery代码片段</a></li> <li><a href="/doc/3c4043783.html" target="_blank">Jquery方法大全</a></li> <li><a href="/doc/6c3971151.html" target="_blank">Jquery(很好的PPT教程,技术较为全面,分享给大家)</a></li> <li><a href="/doc/ab3752065.html" target="_blank">Jquery(很好的PPT教程,技术较为全面,分享给大家)解析</a></li> <li><a href="/doc/017005214.html" target="_blank">50个实用的JQUERY案例</a></li> <li><a href="/doc/d64224956.html" target="_blank">jquery的ajax常用方法</a></li> <li><a href="/doc/223309885.html" target="_blank">Jquery常见问题解决</a></li> <li><a href="/doc/4113897270.html" target="_blank">jquery常用的选择器整理</a></li> <li><a href="/doc/857281856.html" target="_blank">jQueryUI入门到精通-常用功能实战</a></li> <li><a href="/doc/bf480400.html" target="_blank">JQUERY学习知识重点</a></li> <li><a href="/doc/0d17612814.html" target="_blank">jQuery学习心得总结(必看篇)</a></li> <li><a href="/doc/f115054333.html" target="_blank">jq方法大全-jQuery</a></li> <li><a href="/doc/3d2732958.html" target="_blank">Jquery优势介绍</a></li> <li><a href="/doc/5216058873.html" target="_blank">基于jQuery 常用控件收集</a></li> <li><a href="/doc/9c13400429.html" target="_blank">高级jquery常用用法总结</a></li> <li><a href="/doc/d51236469.html" target="_blank">JQuery中常用的函数方法总结</a></li> <li><a href="/doc/1b12303687.html" target="_blank">jQuery常用功能大全</a></li> <li><a href="/doc/3e12996893.html" target="_blank">50个实用的jquery案例</a></li> <li><a href="/doc/851024448.html" target="_blank">jquery常用小功能总结</a></li> <li><a href="/doc/ae16402233.html" target="_blank">jQuery面试题汇总</a></li> </ul> <div class="coltitle">最新文档</div> <ul class="lista"> <li><a href="/doc/0f19509601.html" target="_blank">幼儿园小班科学《小动物过冬》PPT课件教案</a></li> <li><a href="/doc/0119509602.html" target="_blank">2021年春新青岛版(五四制)科学四年级下册 20.《露和霜》教学课件</a></li> <li><a href="/doc/9b19184372.html" target="_blank">自然教育课件</a></li> <li><a href="/doc/3019258759.html" target="_blank">小学语文优质课火烧云教材分析及课件</a></li> <li><a href="/doc/d819211938.html" target="_blank">(超详)高中语文知识点归纳汇总</a></li> <li><a href="/doc/a419240639.html" target="_blank">高中语文基础知识点总结(5篇)</a></li> <li><a href="/doc/9d19184371.html" target="_blank">高中语文基础知识点总结(最新)</a></li> <li><a href="/doc/8a19195909.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/8519195910.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/7f19336998.html" target="_blank">高中语文基础知识点总结大全</a></li> <li><a href="/doc/7119336999.html" target="_blank">超详细的高中语文知识点归纳</a></li> <li><a href="/doc/6619035160.html" target="_blank">高考语文知识点总结高中</a></li> <li><a href="/doc/6719035161.html" target="_blank">高中语文知识点总结归纳</a></li> <li><a href="/doc/4a19232289.html" target="_blank">高中语文知识点整理总结</a></li> <li><a href="/doc/3b19258758.html" target="_blank">高中语文知识点归纳</a></li> <li><a href="/doc/2619396978.html" target="_blank">高中语文知识点归纳(大全)</a></li> <li><a href="/doc/2b19396979.html" target="_blank">高中语文知识点总结归纳(汇总8篇)</a></li> <li><a href="/doc/1419338136.html" target="_blank">高中语文基础知识点整理</a></li> <li><a href="/doc/ed19066069.html" target="_blank">化工厂应急预案</a></li> <li><a href="/doc/bd19159069.html" target="_blank">化工消防应急预案(精选8篇)</a></li> </ul> </div> </div> <script> var sdocid = "9c27b222a5e9856a5612601b"; </script> <div class="clearfloat"></div> <div id="footer"> <div class="ft_info"> <a href="https://beian.miit.gov.cn">闽ICP备16038512号-3</a> <a href="/tousu.html" target="_blank">侵权投诉</a>  ©2013-2023 360文档中心,www.360docs.net | <a target="_blank" href="/sitemap.html">站点地图</a><br /> 本站资源均为网友上传分享,本站仅负责收集和整理,有任何问题请在对应网页下方投诉通道反馈 </div> <script type="text/javascript">foot()</script> </div> </body> </html>