jQuery是一个javascript框架,但绝对不是通常意义上的一些包装,个人感觉是一个改变js控制方式的框架。我们可以像美工通过写css分离页面代码一样,通过jQuery来分离页面与效果、。下面转一段介绍:

jQuery具有如下一些特点:
1.            代码简练、语义易懂、学习快速、文档丰富。
2.            jQuery是一个轻量级的脚本,其代码非常小巧,最新版的JavaScript包只有20K左右。
3.            jQuery支持CSS1-CSS3,以及基本的xPath。
4.            jQuery是跨浏览器的,它支持的浏览器包括IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+。
5.            可以很容易的为jQuery扩展其他功能。
6.            能将JS代码和HTML代码完全分离,便于代码和维护和修改。
7.            插件丰富,除了jQuery本身带有的一些特效外,可以通过插件实现更多功能,如表单验证、tab导航、拖放效果、表格排序、DataGrid,树形菜单、图像特效以及ajax上传等。
        jQuery的设计会改变你写JavaScript代码的方式,降低你学习使用JS操作网页的复杂度,提高网页JS开发效率,无论对于js初学者还是资深专家,jQuery都将是您的首选。
       jQuery适合于设计师、开发者以及那些还好者,同样适合用于商业开发,可以说jQuery适合任何JavaScript应用的地方,可用于不同的Web应用程序中。
官方站点:http://jquery.com/  中文站点:http://jquery.org.cn/
  
在使用过jQuery后,也发现了一些不爽的地方 :
 
        1.大量使用回调(类似java中使用匿名内部类)格式。导致代码不好阅读,更麻烦的是,一不小心就会丢失});结束符,导致js失败。。调试js是一个痛苦的过程。 
 
        2.使用${}获取到的对象都是jQuery对象,导致DOM中的函数,事件失效。
比如一个<input type="checkbox" id="aaa"/>, 使用$("#aaa")得到jQuery对象,但是$("#aaa").checked会出错
 jQuery使用自己的API,与标准js不兼容.  
 
p.s.解决jQuery到DOM对象的转换:
<input type="checkbox" id="aaa"/>
1. 使用$("#aaa")得到jQuery对象 。使用$("#aaa")[0]则可以取得DOM对象,$("#aaa")[0].checked使用无误。 
2. jQuery的API中提到了一个get()函数,可以解决对象到DOM的转换。
get() 取得所有匹配的 DOM 元素集合。
这是取得所有匹配元素的一种向后兼容的方式(不同于jQuery对象,而实际上是元素数组)。
如果你想要直接操作 DOM 对象而不是 jQuery对象,这个函数非常有用。
-------------------------------------------------------------------------------- Access all matched DOM elements. This serves as a backwards-compatible way of accessing all matched elements (other than the jQuery object itself, which is, in fact, an array of elements). It is useful if you need to operate on the DOM elements themselves instead of using built-in jQuery functions.
返回值 Array<Element>

注意到返回的是队列,$("#aaa").get()[0] 就可以返回当前DOM的 input元素。$("#aaa").get()[0].checked使用无误

最新文章

  1. 导入数据经常使用的SQL语句整理整理
  2. .Net 中的反射(序章) - Part.1
  3. visual studio 2010 C#编程时 没有.NET framework 2.0目标框架的解决办法
  4. rabbitmq_config
  5. 【软件分析与挖掘】BOAT: An Experimental Platform for Researchers to Comparatively and Reproducibly Evaluate Bug Localization Techniques
  6. Summary: Trie Data Structure
  7. Hbase0.98的环境搭建
  8. 关于json中对象的删除
  9. POJ1836 Alignment(LIS)
  10. Python虚拟环境安装virtualenv
  11. 10分钟学会JAVA注解(annotation)
  12. mysql安装及常见使用
  13. Git Learning2 GitHub upload
  14. Pytest+Allure定制报告
  15. Python_每日习题_0005_三数排序
  16. 如何查找物理cpu,cpu核心和逻辑cpu的数量
  17. flask --- 02. 路由, 初始化配置,蓝图
  18. 第一个Spring Boot程序
  19. String的用法------程序猿的双十一
  20. android 数据加密——加密的概述

热门文章

  1. db file sequential read (数据文件顺序读取)
  2. Android开源图表库介绍
  3. STL&amp;quot;源码&amp;quot;剖析-重点知识总结
  4. the NTP socket is in use, exiting
  5. TortoiseGit&#39;s Settings
  6. 数据结构 -- 图的最短路径 Java版
  7. HDU2648:Shopping(DKBR_hash)
  8. WinForms 使用Graphics绘制字体阴影
  9. Struts2数据校验方法
  10. unigui TUniTreeView demo