吐槽

近期比較烦,对于一个前端白痴来说,工作方向突然转向前端这块着实让人蛋疼无比。前段时间简单的学习了下EasyUI,算是对其有一个简单的认知了吧。EasyUI的研究过程中发现,假设没有掌握JS、JQuery想要进行兴许的开发会很困难。得,又得学下JQuery,一种蛋蛋的忧伤。一直觉得前端的水很的深这段时间算是见识到了,哎,只是工作还的继续,吐槽完了,卯足干劲充电吧!

前言

某前端白痴一个,会点html+css+js.JQuery的学习书籍看的是《瑞丽的JQuery》,先入门看了两章,感觉能看懂,还不错。

日后的学习也就打算採用该书了。当然參考网络上的一些博客文章(独立博客)也是十分必须的。

认识JQuery

JavaScript

认识JQuery之前,有必要了解下javascript。

一种脚本语言,使得网页和用户之间实现了一种实时的、动态的和交互的关系,网页中包括了很多其它的交互性的元素。

其强大之处不用我这菜鸟再做赘述。只是其本身存在的一些弊端也就造成了兴许js库的产生。基本的三大弊端:

  • 复杂的文档对象模型(DOM)
  • 不一致的浏览器实现
  • 缺乏便捷的开发、调试工具

基于javascript上述的缺点,为了简化js的开发一些javascript库诞生了。

js库封装了非常多提前定义的对象和有用函数.能更加高速、便捷的建立页面交互元素。

这里对于有哪些js库就不再多谈了,重点了解下JQuery,这也是自己兴许学习的重点。

JQuery

一个很优秀的javascript库,对于js性能的理解也是十分的到位的。

现现在在javasript渐渐隐去时(表喷我),JQuery也越发的受欢迎了。

JQuery凭借简洁的语法和跨平台的兼容性,极大地简化了js开发人员遍历HTML文档、操作DOM、处理事件、运行动画和开发Ajax的操作。其独特而又优雅的代码风格改变了javascript开发人员设计思路和编敲代码的方式。

JQuery的主旨就是"wirte less do more",写更少的代码,实现很多其它的功能。

不管你是网页设计师、后台开发人员、业余爱好者还是项目管理者,也不管是javascript刚開始学习的人还是javascript高手,都有足够的理由去学习JQuery。

JQuery的优势

jq强调的理念就是"wirte less,do more"。jq独特的选择器、链式的DOM操作、事件处理机制和封装完好的Ajax都是其它js库所不能达到的。

概括来说jq的优势大致分为例如以下几个方面:

(1) 轻量级

jquery是很轻巧的,採用Dean Edwards编写的Packer(http://dean.edwards.name/packer/)压缩后,大小不到30kb。假设使用Min版本号而且在server端启用Gzip压缩后,大小仅仅有18kb。

(2) 强大的选择器

jqery同意开发人员使用从css1到css3差点儿全部的选择器,以及jquery独创的高级并且复杂的选择器。

(3) 出色的DOM操作的封装

jquery封装了大量经常使用的DOM操作,使开发人员在编写DOM操作相关程序时候可以得心应手。

jquery轻松的完毕各种原本很复杂的操作,使得js菜鸟也能写出出色的程序。

(4) 可靠的事件处理机制

jquery的事件处理机制吸收了javascript专家Dean Edwards编写的事件处理函数的精华,使得jquery在处理事件绑定的时候相当可靠。

在预留退路、循序渐进以及非入侵编程思想方面,jquery也做的很不错。

(5) 完好的Ajax

jquery将全部的Ajax操作封装到一个函数$.ajax()里,使得开发人员处理ajax的时候可以专心的处理业务逻辑而无需关心浏览器兼容性和XMLHttpRequest对象的创建和使用的问题。

(6) 不污染顶级变量

jquery仅仅是建立了一个名为jquery的对象,器全部的函数都是在这个对象之下的。

其别名也能够随时交出控制权,不会污染其它变量,这使得jquery能够与js和其它js库共存,在项目中放心的引用而不须要考虑到后期可能的冲突。

(7) 出色的兼容性

作为一个流行的js库,jquery的浏览器兼容性也是十分良好的。

(8) 链式操作

对发生在同一个jq对象上的一组动作,能够直接连写而无需反复获取对象。这样的链式操作方式使得jq的代码无比优雅。

并且无需反复获取对象使得性能得到提升(选择器获取对象是比較消耗性能的)。

(9) 隐式迭代

当用jq找到带有".class"类的所有元素,隐藏它们时,无需编写循环遍历每个返回的元素。jq里面的方法都是被设计成自己主动操作对象的集合,而不是单独的对象,这使得大量的玄幻结构变得不再必要,优化了代码量。

(10) 行为层与结构层的分离

开发者能够使用jqery选择器得到元素,然后直接给元素加入事件。这样的将行为层与结构层全然分离的思想,使得jquery开发者页面开发者各司其职,避免了一些不必要的冲突,同一时候也便于后期的维护,不须要再html代码中寻找某些寒素和反复改动html代码。

(11) 丰富的插件支持

jquery是easy扩展的,这使得基于jquery的开源插件越来越懂,也越来越好,借助于一些开源的插件,可以高速的构建交互性较强的应用。

(12) 开源。

jquery是一个开源的产品,不论什么人都能够自由的使用并提出改进意见。开源使得一个产品更加具有活力,也会促进一个产品的不断改进,同一时候一些新的灵感和idea也将促进产品的深化。

有理由相信开源的JQuery会越来越受欢迎。

JQuery牛刀小试

简单的了解了下jquery接下来简单的尝试下jquery吧。

JQuery环境

1、获取jquery

进入jquery官网:http://jquery.com/,下载最新的jquery库。

2、jquery库类型说明

在正式的编写代码之后,有必要了解下jquery库的两种类型:JQuery xxx.min.js(Minified and Gzipped) 和 JQuery xxx.js(Uncompressed)

前者是经过JSMin等工具进行压缩后的版本号,大小为54kb,假设server开启Gzip压缩之后,大小将进一步减小为18kb。主要用户产品和项目。

后者是完整无压缩版本号,主要用户測试、学习和开发。

3、JQuery环境配置

jquery无需安装,仅仅需解压到相关目录中,开发的时候在html页面中引入该.js文件就可以。

JQuery入门

一个简单的样例:点击某个div实现隐藏该div,和原生js进行比較,代码例如以下:

<html>
<title>JQuery学习入门</title>
<script src="js/jquery-1.9.1.js"></script>
<head>
<style>
.div {
background: #58c3d6;
text-decoration-line: none;
text-align: center;
line-height: 60px;
color: #ffffff;
height: auto;
}
</style>
<script>
/**通过JQuery库来实现隐藏DIV*/
$(document).ready(function() {
$("#div").click(function() {
$(this).hide();
});
}); /*通过原生js实现DIV的隐藏、显示*/ function toggle(targetId) {
var target = document.getElementById(targetId);
if (target.style.display == 'block') {
target.style.display = "none";
} else {
target.style.display = "block";
}
}
</script>
</head> <body> <button onclick="toggle('div')">开关</button>
<div class="div" id="div">点我隐藏</div> </body> </html>

实际的效果这不贴图了,能够看出的是jq相比較js获取元素的方式更为的简单快捷了,JQuery的后缀query本来就是查询的意思,这也许就是jquery名字的由来呢。

简单的了解了JQuery,也算对jquery有了一个认知吧,兴许的就是一些知识点的积累了,OVER!

jQuery学习之开篇的更多相关文章

  1. [翻译svg教程]svg学习系列 开篇

    目录 [翻译svg教程]svg学习系列 开篇 [翻译svg教程 ]svg 的坐标系统 [翻译svg教程]svg 中的g元素 [翻译svg教程]svg中矩形元素 rect [翻译svg教程]svg中的c ...

  2. jQuery学习之路(1)-选择器

    ▓▓▓▓▓▓ 大致介绍 终于开始了我的jQuery学习之路!感觉不能再拖了,要边学习原生JavaScript边学习jQuery jQuery是什么? jQuery是一个快速.简洁的JavaScript ...

  3. jquery学习(一)

    简单的jquery学习,首先在页面引入jquery <!-- 引入jquery --> <script src="js/jquery-1.8.3.js" type ...

  4. jQuery学习笔记(一)jQuery选择器

    目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...

  5. jQuery 学习笔记

    jQuery 学习笔记   一.jQuery概述    宗旨: Write Less, Do More.    基础知识:        1.符号$代替document.getElementById( ...

  6. jQuery学习笔记(一):入门

      jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操 ...

  7. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  8. 很不错的jQuery学习资料和实例

    这些都是学习Jquery很不错的资料,整理了一下,分享给大家. 希望能对大家的学习有帮助. 帕兰 Noupe带来的51个最佳jQuery教程和实例, 向大家介绍了jQuery的一些基本概念和使用的相关 ...

  9. 【Head-First设计模式】C#版-学习笔记-开篇及文章目录

    原文地址:[Head-First设计模式]C#版-学习笔记-开篇及文章目录 最近一年断断续续的在看技术书,但是回想看的内容,就忘了书上讲的是什么东西了,为了记住那些看过的东西,最好的办法就是敲代码验证 ...

随机推荐

  1. 3-4 第三天 Generator生成器

    Generator是ES6里面的新增规范,ES6其实就是ES2015.ES5.ES6.ES7这些术语大家上网一查就都明白了.JavaScript是一个范程,就是我们说的JS.ES就是ECMA Scri ...

  2. fsockopen get,post 封装 (转)

    function http_request($url, $method = 'GET', $postfields = NULL, $headers = array()) {   $parse = pa ...

  3. PCB 全景图技术实现

    为了对3D模型理解更透,这里采用threejs(WebGL第三方库)实现,刚开始学习入门,为了能看明白基本上每行代码都注释. 如果仅仅是为了实现全景图,可以用photo-sphere-viewer.j ...

  4. simpleOS 1.0

    做了一个so simple的OS,本不好意思多说的....不过还是说下吧. 首先,买不起开发板的我没有办完完成一件事,那就是保存任务上下文,因为这个过程实际上是将寄存器的值存放到任务堆栈中去的. 而要 ...

  5. Python 43 视图 、sql注入问题 、事务 、存储过程

    一:视图 1 视图是什么? 本质是一张虚拟的表,他的数据来自select语句 创建视图 create view test_view select *from t1; 2 有什么用? 原表安全 案例: ...

  6. B - IQ test

    Problem description Bob is preparing to pass IQ test. The most frequent task in this test is to find ...

  7. facade 模式和gateway模式的区别

    原文:http://stackoverflow.com/questions/4422211/what-is-the-difference-between-facade-and-gateway-desi ...

  8. windows服务安装错误 在‘安装’过程发生异常:System.ComponentModel.Win32Exception:系统正在关机

    今天安装windows服务的时候先是在本地安装测试通过,但是一到服务器就一直安装失败 在‘安装’过程发生异常:System.ComponentModel.Win32Exception:系统正在关机 然 ...

  9. C# html生成PDF遇到的问题,从iTextSharp到wkhtmltopdf

    我们的网站业务会生成一个报告,用网页展示出来,要有生成pdf并下载的功能,关键是生成pdf. 用内容一段段去拼pdf,想想就很崩溃,所以就去网上找直接把html生成pdf的方法. 网上资料大部分都是用 ...

  10. Android Retrofit 2.0文件上传

    Android Retrofit 实现(图文上传)文字(参数)和多张图片一起上传 使用Retrofit进行文件上传,肯定离不开Part & PartMap. public interface ...