11.20第十三课
来源:互联网 发布:javascript和node.js 编辑:程序博客网 时间:2024/06/09 23:27
认识jQuery
jQuery 的理念是:write less,do more。
jQuery 极大的简化了 javascript 开发人员遍历HTML文档、操作 DOM 、处理事件、执行动画和开发 Ajax 的操作。
1.jQuery优势
- 轻量级。压缩后可以保持在30kb左右。
- 强大的选择器。可以使用CSS1-CSS3几乎所有选择器。
- 出色的DOM操作的封装。
- 可靠的事件处理机制。
- 完善的Ajax。
- 不污染顶级变量。jQuery只建立一个名为jQuery的对象,其所有的函数方法都在这个对象之下。
2.使用jQuery
jQuery 库文件一般有生产版和开发版。区别在于生产版经过了压缩,只有30kb左右,我们下载使用开发版就可以了。
使用时,在页面引入 jquery.js 库文件就可以使用了。
<script type="text/javascript" src="js/jquery.js"></script>
简单编写jQuery:
$(document).ready(function(){ alert('Hello jQuery'); });
window.onload方法和$(document).ready()方法的区别。
- window.onload必须等待网页中所有内容加在完毕才能执行。
- $(document).ready()是网页中所有DOM结构绘制完成后就执行,可能DOM元素关联的东西并没有加载。
链式风格
//等待dom元素加载完毕.$(document).ready(function(){ $(".level1 > a").click(function(){ $(this).addClass("current") //给当前元素添加"current"样式 .next().show() //下一个元素显示 .parent().siblings().children("a").removeClass("current") //父元素的兄弟元素的子元素<a>移除"current"样式 .next().hide(); //它们的下一个元素隐藏 return false;//事件处理阻止了默认的事件行为并停止了事件通过dom向上冒泡 });});
jQuery对象和DOM对象
1.jQuery对象
jQuery对象是通过jQuery包装DOM对象后产生的对象。
jQuery对象是jQuery独有的。拥有jQuery里面的方法。
例如:
lg($('#dd'));lg(document.getElementById('dd'));
jQuery对象中无法使用DOM对象的任何方法。
DOM对象也不能使用jQuery里面的方法。
2.JQuery对象和DOM对象的相互转换。
(1)jQuery提供了两种方法将一个jQuery对象转换成DOM对象,即[index]和get(index)。
//第一种方法lg($('#dd'));lg($('#dd')[0]);//第二种方法lg($('#dd'));lg($('#dd').get(0));
(2)DOM对象转化成jQuery对象。
只需要把DOM对象包装起来,既可以获得一个jQuery对象了。
var dd = document.getElementById('dd'); var $dd = $(dd); lg($dd);
jQuery选择器
1.基本选择器
2.层次选择器
3.过滤选择器
jQuery应用实例
一、导航栏的显示与隐藏
效果图
部分代码:
$(document).ready(function(){ $('.level1 a').click(function(){ $(this).addClass('current').next().show(). parent().siblings().children('a').removeClass('current').next().hide(); return false; }); });
二、品牌种类的部分显示与隐藏
效果图
部分代码:
$(function(){ var $category = $('ul li:gt(5):not(:last)'); $category.hide(); var $toggleButton = $('div.showmore>a'); $toggleButton.click(function(){ if($category.is(':visible')){ $category.hide(); $(this).find('span').css('background','url(img/down.gif) no-repeat 0 0').text('显示全部品牌'); }else{ $category.show(); $(this).find('span').css('background','url(img/up.gif) no-repeat 0 0').text('隐藏部分品牌'); } return false; }); });
阅读全文
0 0
- 11.20第十三课
- 第十三课:运算符
- 第十三课 异常
- 第十三课 运算符
- JS事件(第十三课)
- 第十三课:Fragment 详解
- UI第十三课
- 第十三课:法线贴图
- 第十三
- 第十三课 桥接模式
- 韩语学习之第十三课
- 面向对象第十三课,封装
- 设计模式第十三堂课
- 易语言学习第十三课
- Android第十三课;绝对布局
- 【第十三课】StringBuffer的使用
- 【第十三课】数组的使用
- 第十三课 创建高级联结
- 优雅的使用python
- 静态查找方法(顺序查找与二分查找)
- Android Studio导入Eclipse项目
- 漏洞--Struts2远程命令执行S2-016
- Android7.0相机兼容处理方法
- 11.20第十三课
- Unsupported major.minor version 52.0
- 使用VideoView 或者SurfaceView 实现视频播放功能
- MySQL命令
- linux下面文件的一些基本操作
- 目标检测之二(传统算法和深度学习的源码学习)
- IF判断括号区别
- c#中public,private,protected,internal的区别
- 使用POI读写word docx文件