JQuery实践--Why JQuery
给页面增加动态功能的工作流模式:选择一个元素或一组元素,然后以某种方式对其进行操作。
利用原始的JavaScript完成这些任务中的任何一个,都会需要数十行代码,JQuery让这些常见的任务变得简单
行为与结构相分离被称为“不唐突的JavaScript”,将行为与结构分离。任何嵌入在HTML页面<body>里的JavaScript表达式或语句,不管是作为HTML元素的特性,还是嵌入在页面<body>的脚本块里,都是不正确的。
<head>
<script type='text/javascript'>
window.onload = function(){
document.getElementById('xxx').onclick = function
...
}
</script>
</head>
不唐突的Javascript要求客户端脚本遵守某些规则,并且应用好的编码模式。
JQuery:使得在页面编程中使用不唐突的JavaScript技巧成为简单快乐的事儿,而无需耗费大量精力写大块代码。我们将发行有效地使用jQuery,可以编写更少的代码在页面上实现更多的功能。
JQuery重点放在从HTML页面获取元素并对其进行操作。利用jQuery,能够利用现有知识去发挥选择权的威力。
JQuery把确保代码能跨越所有主要浏览器以一致的方式工作,摆在了高优先级的位置。
1.JQuery包装集:
收集一组元素:$(selector) or jQuery(selector)
$()函数返回特别的JavaScript对象,它包含着与选择器相匹配的DOM元素的数组。该对象拥有大量预定义的有用方法,能够作用于该组元素。 称为包装器或包装集 (用扩展功能来对匹配的元素进行包装)。能够在其上用JQuery定义的方法去操作的,匹配元素的集合。
经常作为JQuery命令引用的许多方法的显著特征是,当完成了一个操作时,它们返回相同的一组元素,提高给下一个操作。(命令链)。因为每个函数都作用在与最初的选择器相匹配的全部元素之上,所以没有必要循环遍历元素数组。
2.实用工具函数
还有一些必须做的事情,并不涉及DOM元素。$ 是几个通用的实用工具函数的命名空间前缀。
文档就绪处理程序:
不唐突的JavaScript,行为从结构里分离出来了。因此,执行对页面元素的操作时在创建页面雨伞的文档标记之外,为了达到这个目的,在执行操作之前,要以某种方式等待,直到页面的DOM元素完全加载。window实例的onload处理程序是在整个页面加载之后执行,会受到一些限制,比如一个大的图片在加载。
等待文档结构被完成地解析,浏览器已经把HTML转换成了DOM树,执行代码:
$(document).ready(function(){ code}) <===> $(function(){code})
好处是,可以在同一个HTML文档中多次使用此技巧,并且浏览器按照函数在页面中定义的先后顺序,一一执行指定的函数。
3.创建DOM元素
通过给$()函数传递包含HTML标记的字符串,可以即时创建相应的DOM元素。$(“<p>dfsdf,/p>").通常,通过这种调用而创建元素层次结构之后,接着利用jQuery的一个DOM操作函数对其进行操作
4.扩展jQuery
通过扩展jQuery,可以利用它提供的强大的功能,特别是在元素选择方面。
$.fn.[funcname] = function(){ return this. 包装集 }
5.jQuery和其他库
导致冲突的库被加载之后的任何时刻,都可以调用:jQuery.noConflict() 把$还原到非jQuery 库所定义的含义.
回顾:
JQuery()函数可以用于执行的任务:
JQuery实践--Why JQuery的更多相关文章
- JQuery 实践--扩展JQuery
Why扩展JQuery通过扩展可以利用JQuery所提供的现有代码基础.避免从头编写代码 有效扩展JQuery的规则扩展JQuery的两种形式: $上直接定义实用工具函数 和JQuery包装集进行操作 ...
- jQuery实践树(2)
上一个实践主要对jquery的ready事件进行.本实践要来使用jQuery改变页面的背景图片.可以先试试效果:http://hovertree.com/texiao/jquerytree/2/ 当你 ...
- jQuery实践-别踩白块儿网页版
▓▓▓▓▓▓ 大致介绍 终于结束了考试,放假回家了.这次的别踩白块儿网页版要比之前做的 jQuery实践-网页版2048小游戏 要简单一点,基本的思路都差不多. 预览:别踩白块网页版 这篇博客并不是详 ...
- jquery实践
转:http://www.cnblogs.com/Wayou/p/jquery_best_prictise.html jQuery编程的最佳实践 好像是feedly订阅里看到的文章,读完后觉得非常 ...
- Jquery实践--精读开篇
JQuery实践,我已经看了最少三遍了.这里面的很多方法对我的工作很有帮助.但由于不是真的进行前端开发,所以JQuery中的很多功能也没有用到.所以隔一段时间想起,就会发觉,一些东西又忘记了.所以趁这 ...
- jquery实践案例--验证电子邮箱
<input type="email" name="email" id="email" value="" onpa ...
- jquery实践案例--验证手机号码
如果要做手机号的验证,那么我们需要知道手机号码的号段. 182 183 187 188 155 156 176 186 189 //移动运营商:170 移动: 2G号段(GSM):134-139.15 ...
- JQuery实践--实用工具函数
实用工具函数,$命名空间的一系列函数,但不操作包装集.它要么操作除DOM元素以外的Javascript对象,要么执行一些非对象相关的操作. JQuery的浏览器检测标志可在任何就绪处理程序执行之前使用 ...
- jquery学习笔记---jquery插件开发
http://www.cnblogs.com/Wayou/p/jquery_plugin_tutorial.html jquery插件开发:http://www.cnblogs.com/damonla ...
随机推荐
- 《Mysql - 我的Mysql为什么会抖一下?》
一: 抖一下? - 平时的工作中,不知道有没有遇到过这样的场景. - 一条 SQL 语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢. - 并且这样的场景很难复现,它不只随机,而 ...
- C++之父给 C 程序员的建议
1. 在 C++中几乎不需要用宏, 用 const 或 enum 定义显式的常量, 用 inline 避免函数调用的额外开销,用模板去刻画一族函数或类型,用 namespace 去避免命名冲突. 2. ...
- Prime Time UVA - 10200(精度处理,素数判定)
Problem Description Euler is a well-known matematician, and, among many other things, he discovered ...
- LeetCode_#1_两数之和 Two Sum_C++题解
1. 两数之和 Two Sum 题目描述 Given an array of integers, return indices of the two numbers such that they ad ...
- unicode 格式 转汉字
function decodeUnicode($str){ return preg_replace_callback('/\\\\u([0-9a-f]{4})/i', create_function( ...
- 1201: 位运算之拼整数(Java)
WUSTOJ 1201: 位运算之拼整数 题目 原题链接 参考博客 XXXXXyun的博客--输入十六进制数 Description 输入无符号短整数k[hex.]和p[oct.],将k的高字节作为结 ...
- Centos7安装gitlab11 学习笔记之备份恢复及邮箱配置
一.备份 修改配置文件 vim /etc/gitlab/gitlab.rb 默认路径为 # gitlab_rails['backup_path'] = "/var/opt/gitlab/ba ...
- 1 Refused to display ‘url’ in a frame because it set 'X-Frame-Options' to 'sameorigin' 怎么解决?
进在开发公司的文件中心组件,提供各个子系统的附件上传下载.预览.版本更新等功能,前端在今天突然给我发一张图,说预览缩略图遇到问题了,然后发了个截图给我: 这很明显是一个跨域问题, X-Frame-Op ...
- ASP.NET WEB应用程序(.network4.5)MVC 工作原理
MVC就是模型.视图.控制器. 项目中控制器对应Controllers目录,视图对应Views目录,模型对应Models目录. 1.当我们创建一个控制器时,比如在Controllers目录新建一个名字 ...
- 案例-使用MapReduce实现join操作
哈喽-各位小伙伴们中秋快乐,好久没更新新的文章啦,今天分享如何使用mapreduce进行join操作. 在离线计算中,我们常常不只是会对单一一个文件进行操作,进行需要进行两个或多个文件关联出更多数据, ...