-
什么是jQuery
jQuery是继prototype之后又一个优秀的JavaScript库。特点是语法简介、兼容性好。极大地简化了JavaScript开发人员遍历HTML文档、操作DOM、处理事件、执行动画和开发ajax的操作。
![Uploading image_974771.png . . .]
与DOM的关系:jQuery对象就是通过jQuery包装DOM对象后产生的对象 - 版本
jQuery1.8 vs jQuery1.9(升级后把$.browser去掉了)
jQuery1.x vs jQuery2.x(2.x给手机用的,不兼容IE8以下)
jQuery3.x (把兼容IE的代码去除,至少要求IE11才可以) - jQuery概览
1、如何引入jQuery
<script src="地址"></script>
2、同时引入两个版本的jQuery怎么处理
jQuery.noConflict = function(){
window.$ = old$
return jquery
}(函数目的:①不该写window.$,永远是undefined
②返回该版本的jQuery)
<script src="query-1.4.js"></script>
(此时window.$ ===jQuery1.4)
<script>
window.jq1.4=jquery.noConflict()
</script>
<script src="query-1.8.js"></script>
(此时window.$ ===jQuery1.8)
<script>
window.jq1.8=jquery.noConflict()
</script>
最终代码得到了window.$===undefined,window.jq1.4,window.jq1.8
如何调用:
①!function($){
$ ===jq1.4
$('div')
}(jq1.4)
!function($){
$ ===jq1.8
$('div')
}(jq1.8)
②{
let $ = jq1.4
$('div')
}(用哪个版本就在作用域里申明哪个版本)
3、ready事件
DOMContentLoaded()不管远程资源有没有,只要所有元素都齐了,就会执行
onload事件管理远程资源(CSS、iframe、image)
$(function(){}),如果是直接写函数,就会在DOMContentLoaded()事件之后执行这个函数。和$().ready(function(){})用法一样
以上是对jQuery简单描述,此外jQuery的链式调用、插件应用都是不错的。笔者可以通过一下途径详细了解
1、jQuery设计思想
2、jQuery API 中文文档
3、书目:《锋利的jQuery》
扫盲:
1、立即执行函数
有时候我们希望在定义函数后立马调用执行它,这就是立即执行函数。
但是假设我们这样调用:
function (){}()(前半部分是函数申明,后半部分是调用。但是这样申明及调用JavaScript时会报错的,因为JavaScript规定以function开头的就是语句,也就是函数申明,所以会报错)
为此,为了达到立即执行函数的目的,我们可以进行如下方式申明及调用
①(function(){ /* code / }());或者(function(){ / code / })();(分号必须写)
②!function(){ / code / }();
~function(){ / code / }();
-function(){ / code / }();
+function(){ / code / }();
③new function(){ / code / }
new function(){ / code */ }()
// 只有传递参数时,才需要最后那个圆括号