Web前端之jQuery库
文章目录
- 一、jQuery介绍
- 1、什么是jQuery
- 2.jQuery语言特点及优势
- 3.jQuery官方网站
- 4.jQuery加载
- 二、jQuery选择器
- 1、jquery用法思想一 :
- i、基本选择器
- ii、选择器修饰过滤
- iii、选择器函数过滤
- iv、选择器转移
- 2、jquery用法思想二
- 三、jQuery属性操作
- 1.设置HTML内容
- 2.设置属性值
- 3.绑定click事件
- 4.jQuery特殊效果
- 四、应用案例
- 1.案例一:基于jQuery实现电影排行榜
- 2. 案例二:基于jQuery实现Tab选项卡
一、jQuery介绍
1、什么是jQuery
- jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。
- jQuery设计的宗旨是**“write Less,Do More”**,即倡导写更少的代码,做更多的事情;
- 它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
- jQuery兼容各种主流浏览器,如IE 6.0+、FF 1.5+、Safari 2.0+、Opera 9.0+等。
- 运行jQuery所需的条件很简单:一台计算机、一个智能电话或一个可以运行现代浏览器的设备。
2.jQuery语言特点及优势
特点:
- 快速获取文档元素。 jQuery的选择机制构建于Css的选择器,它提供了快速查询DOM文档中元素的能力,而且大大强化了JavaScript中获取页面元素的方式。
- 提供漂亮的页面动态效果。 jQuery中内置了一系列的动画效果,可以开发出非常漂亮的网页,许多网站都使用jQuery的内置的效果,比如淡入淡出、元素移除等动态特效。
- 创建AJAX无刷新网页。 AJAX是异步的JavaScript和XML的简称,可以开发出非常灵敏无刷新的网页,特别是开发服务器端网页时,比如PHP网站,需要往返地与服务器通信,如果不使用AJAX,每次数据更新不得不重新刷新网页,而使用AJAX特效后,可以对页面进行局部刷新,提供动态的效果。
- 提供对JavaScript语言的增强。 jQuery提供了对基本JavaScript结构的增强,比如元素迭代和数组处理等操作。
- 增强的事件处理。 jQuery提供了各种页面事件,它可以避免程序员在HTML中添加太多事件处理代码,最重要的是,它的事件处理器消除了各种浏览器兼容性问题。
- 更改网页内容。 jQuery可以修改网页中的内容,比如更改网页的文本、插入或者翻转网页图像,jQuery简化了原本使用JavaScript代码需要处理的方式。
优势:
- jQuery 是一个 JavaScript 库。
- jQuery 极大地简化了 JavaScript 编程。
- jQuery 很容易学习
jquery不等于JS!
3.jQuery官方网站
- 在上一篇中我们写到的很多案例代码,他们的js代码和HTML是写在一起的,其实我们可以把js代码独立出来,创建一个js目录,里面用来放单独的js代码,然后在HTML的head里加入
<script type="text/javascript" src="目录名/文件名.js"></script>
- jquery是一个函数库,一个js文件,页面用script标签引入这个js文件就可以使用。
下载地址:
jQuery官方网站: http://jquery.com/
4.jQuery加载
将获取元素的语句写到页面头部,会因为元素还没有加载而出错,jquery提供了ready方法解决这个问题,它的速度比原生的 window.onload 更快。
二、jQuery选择器
选择某个网页元素,然后对它进行某种操作, jquery选择器 jquery选择器可以快速地选择元素, 选择规则和css样式相同,使用length属性判断是否选择成功。
jQuery 中所有选择器都以美元符号开头:$()。
1、jquery用法思想一 :
选择某个网页元素,然后对它进行某种操作
i、基本选择器
$(document) //选择整个文档对象
$('li') //选择所有的li元素
$('#myid') //选择id为myid的网页元素
$('.myClass') //选择class为myClass的元素
$('input[name=first]') //选择name属性等于first的input元素
$('#ul1 li span') //选择id为ul1元素下的所有li下的span元素
ii、选择器修饰过滤
$('#ul1 li:first') //选择id为ul1元素下的第一个l个li
$('#ul1 li:odd') //选择id为ul1元素下的li的奇数行
$('ul1 li:eq(2)') //选择id为ul1元素下的第3个lli
$('#ul1 li:gt(2)') //选择id为ul1元素下的前三个之后的li
$('#myForm:input') //选择表单中的input元素
$('div:visble') //选择可见的div元素
iii、选择器函数过滤
$('div').has('p'); //选择包含p元素的div元素
$('div').not('.myClass'); //选择class不等于myClass的div元素
$('div').filter('.myClass'); //选择class等于myClass的div元素
$('div').first(); //选择第一个div元素
$('div').eq(5); //选择第6个div元素
iv、选择器转移
$('div').prev('p'); //选择div元素前面的第一个p元素
$('div').next('p'); //选择div元素后面的第一个p元素
$('div').closest('form'); //选择离div最近的那个form元素
$('div').parent(); //选择div的父元素
$('div').children(); //选择div的所有子元素
$('div').siblings(); //选择div的同级元素
$('div').find('myClass'); //选择div内的class等于myClass的元素
2、jquery用法思想二
同一个函数完成取值和赋值
//获取div的样式
$('div').css('width');
$('div').css('color');
//设置div的样式
$('div').css('width','30px');
$('div').css('height','30px');
$('div').css(fontSize:'30px',color:'red');
$('#div1').addClass('divClass2')
//为id为div1的对象追加样式divClass2
$('#div1').removeClass('divClass')
//移除id为div1的对象的class名为divClass的样式
$('#div1').removeClass('divClass divClass2')
//移除多个样式
$('#div1').toggleClass('anotherClass')
//重复切换anotherClass样式
三、jQuery属性操作
1.设置HTML内容
//取出HTML内容
var $html=$('#div1').html();
//设置html内容
$('#div1').html('<span>添加文字</span>');
//取出文本内容
var $html=$('#div1').text()
//设置文本内容
$('#div1').text('<span>添加文本</span>')
2.设置属性值
//取出图片的地址
var $src=$('#mg1').attr('src');
//设置图片的地址和属性
$('#mg1').attr({src:'test,jpg',alt:'Test Image'});
3.绑定click事件
$('#btn1').click(function(){//内部的this指的是原生对象//使用jquery对象用$(this)
})
4.jQuery特殊效果
fadeOut() 淡出
fade Toggle() 切换淡入淡出
hide() 隐藏元素
show() 显示元素
toggle() 一次展示或隐藏某个元素
slideDown() 向下展开
slideUp() 向上卷起
slideToggle() 一次展开或卷起某个元素
$btn.click(function(){$('#div1').fadeln(1000,'swing',function(){alert('done!');})
})
四、应用案例
1.案例一:基于jQuery实现电影排行榜
默认只显示电影名称列表,当鼠标经过电影名称时,显示电影的详细内容。
代码:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>实现电影排行榜</title><style type="text/css">*{margin: 0;padding: 0;}.box{width: 300px;height: 450px;border: 1px solid black;margin: 0 auto;margin-top: 50px;}.box h1{color: chocolate;font-size: 20px;line-height: 35px;font-weight: bold;border: 1px dashed olivedrab;padding-left: 10px;}.box li{list-style: none;padding: 10px 10px;border: 1px dashed cadetblue;}.box li span{background-color: darksalmon;display: inline-block;width: 20px;height: 20px;text-align: center;color: lightyellow;}.box li:nth-child(-n+3) span{background-color: crimson;}.content img{width: 80px;height: 120px;float: left;}.content p{width: 180px;height: 120px;float: right;font-size: 12px;}.content{margin: 5px;overflow: hidden;display: none;}.current .content{display: block;}</style><script type="text/javascript" src="js/jquery.min.js"></script><script>//当页面加载完成时,执行的js内容$(function () {//在鼠标移入时,做什么事情,定义一个匿名函数$('li').mouseenter(function () {$(this).addClass('current');});$('li').mouseleave(function () {$(this).removeClass('current');});})</script>
</head>
<body><div class="box"><h1>电影排行榜</h1><ul><li><span>1</span>哪吒之魔童降世<div class="content"><img src="./img/哪吒.jpg"><p>天地灵气孕育出一颗能量巨大的混元珠,元始天尊将混元珠提炼成灵珠和魔丸,灵珠投胎为人,助周伐纣时可堪大用;
而魔丸则会诞出魔王,为祸人间。元始天尊启动了天劫咒语,3年后天雷将会降临,摧毁魔丸。
本应是灵珠英雄的哪吒却成了混世大魔王。</p></div></li><li><span>2</span>利刃出鞘<div class="content"><img src="./img/利刃出鞘.jpg"><p>富豪小说家哈兰·斯隆比(克里斯托弗·普卢默 饰)在自己85岁生日第二天,被发现在自家庄园离奇自杀,遗留了亿万遗产。
久负盛名的大侦探布兰克(丹尼尔·克雷格 饰)突然被匿名人士雇佣调查此案真相。
哈兰家族没有表面上那么和睦.</p></div></li><li><span>3</span>少年的你<div class="content"><img src="./img/少年的你.jpg"><p>一场高考前夕的校园意外,改变了两个少年的命运。
陈念(周冬雨 饰)性格内向,是学校里的优等生,努力复习、考上好大学是高三的她唯一的念头。
小北”(易烊千玺 饰)的少年闯入了她的世界……</p></div></li><li><span>4</span>邪不压正<div class="content"><img src="./img/邪不压正.jpg"><p>北洋年间,北京以北。习武少年李天然(彭于晏 饰)目睹师兄朱潜龙(廖凡 饰)勾结日本特务根本一郎,杀害师父全家。
李天然侥幸从枪下逃脱,被美国医生亨德勒救下。李天然伤愈后,赴美学医多年,并同时接受特工训练。
多次为谎言蛊惑、错失时机的李天然,</p></div></li><li><span>5</span>姜子牙<div class="content"><img src="./img/姜子牙.jpg"><p>昆仑弟子姜子牙(郑希 配音)率领众神伐纣,赢得封神大战胜利。
即将受封成为众神之长的他,却因一时过失引得昆仑大乱,从此被贬北海,为世人所唾弃。
十年后,因一个契机,姜子牙踏上重回昆仑的旅途。</p></div></li></ul>
</div>
</body>
</html>
运行结果
2. 案例二:基于jQuery实现Tab选项卡
点击选项卡,出现不同的图片内容
上一个案例代码是写在一个html文件里了;
为了方便清楚,我们最好还是将html文件和js,css文件分开来写,在html文件里的头部加入css和js即可。
代码:
html文件
<!DOCTYPE HTML >
<html lang="en">
<head><meta charset="UTF-8"><title>基于jquery实现Tab选项卡</title><link rel="stylesheet" href="Tab选项.css"><script type="text/javascript" src="./js/jquery.min.js"></script><script src="Tab选项.js"></script>
</head>
<body><div class="box"><ul class="nav"><li class="current">主页</li><li>遇见好货</li><li>带你旅行</li><li>年终狂欢</li></ul><ul class="content"><li class="show"><img src="./3.png" alt=""> </li><li><img src="./3.jpg" alt=""></li><li><img src="./2.jpg" alt=""> </li><li><img src="./1.jpg" alt=""> </li></ul>
</div>
</body>
</html>
css文件
*{margin: 0;padding: 0;
}
.box{width: 448px;height: 298px;border:1px solid lavenderblush;margin: 0 auto;
}
.nav li{list-style: none;width: 109px;height: 50px;background-color: lavender;color: brown;text-align: center;line-height: 50px;float: left;border: 1px solid wheat;
}
.nav li:hover{background-color: mediumpurple;
}
.nav .current{background-color: plum;
}
.content li{list-style: none;display: none;/*默认不显示*/
}
.content .show{/* 显示块级元素*/display: block;
}
.content li img{width: 448px;height: 248px;
}
js文件
//当页面加载完成时,执行的js内容
$(function () {//监听鼠标是否移动到Tab选项卡的事件//在鼠标移入时,做什么事情(修改颜色)定义一个匿名函数;修改为当鼠标点击时:直接将mouseenter改为click$('.nav li').mouseenter(function () {$(this).addClass('current');//还原其他兄弟节点的颜色$(this).siblings().removeClass('current');//获取对应选项卡的索引,为了找到对应索引的图片var index = $(this).index();//根据索引找到对应的图片var content_li = $('.content li').eq(index);//隐藏兄弟节点显示的图片content_li.siblings().removeClass('show');//显示选项卡对应的图片content_li.addClass('show')})
})
运行结果
Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的;
在访问国外的网下载时,太慢了,使用国内CDN加速服务;
使用时复制link标签添加到html中或者自己下载到本地,
下载链接:
bootstrap.min.css
关于前端的学习,可以通过菜鸟教程和W3C网站学习;
一些前端页面设计的模板,可以参考懒人之家:https://www.lanrenzhijia.com/
Web前端之jQuery库相关推荐
- Web前端之jQuery 一
Web前端之jQuery 一 jQuery介绍和核心 为什么要使用以及如何使用jQuery jQuery的入口函数 jQuery对象和js对象的转换 jQuery的选择器 jQuery的基本选择器 层 ...
- WEB前端框架jQuery、VueJS、React.JS、Node.JS、Bootstrap解读
Web前端框架可以分为两类: 1)JS的类库框架 JQuery.JS Angular.JS(模型, scope作用域,controller,依赖注入,MVVM):前端MVC Vue.JS(MVVM) ...
- 十大常用web前端UI组件库,赶紧收藏
今天主要介绍web前端常用的UI库,这些网站基本都是背靠互联网大厂,值得web前端开发者收藏,当然还是要多多学习使用. Vant 一款有赞出品轻量.可靠的的移动UI组件库,目前支持 Vue2.Vue3 ...
- 小猿圈web前端之jQuery抽奖系统
你有没有想过有一天可以成为千万富翁呢?你是通过自己的努力和奋斗还是其他手段获得的呢?前端程序员是通过jQuery获得的,他自己写了一个抽奖系统,下面就小猿圈前端讲师分享给大家. 效果图: <!D ...
- 第四章 前端开发——JQuery库
第四章 前端开发学习--JQuery库 一.jQuery基础 二.使用选择器获取元素 三.使用筛选器获取元素 四.DOM操作 五.属性和样式操作 六.jQuery事件机制 七.动画效果 八.工具和其他 ...
- Web前端第四季(jQuery):四:301-jQuery基本过滤器(奇数和偶数)+302-实现隔行换色+401-祖先选择器和子代选择器
目录 一.目的 1.想:学习前端知识 2.想:记录笔记,下次不用看视频,直接看笔记就可以快速回忆. 二.参考 1.我自己代码的GitHub网址 2.SIKI学院:我参考此视频实操 3.w3school ...
- 自己总结的web前端的jquery面试题
1 你在公司是怎么用jquery的? 答:在项目中是怎么用的是看看你有没有项目经验(根据自己的实际情况来回答) 你用过的选择器啊,动画啊,表单啊,ajax事件等 配置Jquery环境 下载jquery ...
- 桌面系统(web前端)jQuery制作Web桌面系统界面类似WebQQ桌面布局
源码不是我写的,但是我在基础上修改了一些内容. 可参考,http://www.xwcms.net/webAnnexImages/fileAnnex/20140220/82693/index.html ...
- jquery级试题_1+x证书web前端开发jquery专项练习测试题
javascript程序设计-题库 1.下面哪一种不属于Jquery的选择器? A. 基本选择器 B. 层次选择器 C. 表单选择器 D. 节点选择器 答案: D 2.如果需要匹配包含文本的元素,用下 ...
最新文章
- java urlstreamhandler_获取对Java的默认http(s)URLStreamHandler的引用
- SAP PM纠正维护
- 从Pix2Code到CycleGAN:2017年深度学习重大研究进展全解读
- SQLSERVER model数据库
- VSFTP配置参数详解
- java xmpp消息推送_基于XMPP协议(openfire服务器)的消息推送实现
- Spring Boot集成thymeleaf异步刷新页面
- 十几位资深架构师,整理了最新架构师学习体系,分享给大家......
- html5 textarea 限制字数,如何限制textarea的字符数为225?
- C++设计模式10--命令模式(二)(Command)--降低请求发送者与接收者耦合
- 使用Easy CHM制作java API chm文件
- 微服务架构的理论基础 - 康威定律
- background简写方式
- Erlang开源20周年:这门编程语言见证了互联网的技术成长
- 开机总是进行磁盘检查
- 【九】【vlc-android】vlc-aout音频流输出端源码分析
- 渗透测试 --- 方法论
- ubuntu开机停留在(initramfs)页面
- 堆——神奇的优先队列 大根堆小根堆详解,附小根堆C++代码实现与STL相关
- 星辰小队针对于软件“星遇”的第二次10天冲刺——第3天
热门文章
- 楼宇内的一个计算机网络属于,网络技术期末考试题及答案
- 蜂鸣器干扰通讯_传输电路中的抗干扰问题及其措施
- [实践]必火网络安全-CTF-初级赛-笔记
- Word中的公式显示不全,或许是这个原因
- 修改 Outlook 数据文件默认保存位置
- 裸辞一时爽,断缴火葬场——细说社保的转移、续保与自缴
- 鸿蒙系统是开放系统还是封闭系统,鸿蒙系统三挑战:应用如何兼容,生态怎么搭建,开放还是闭合...
- Enigma - Structural image processing protocol (结构图像处理协议协议)
- Unity3D和罗技方向盘使用方法链接总结
- 几何视觉的编程实践——相机参数计算——基于ipyvolume的3D可视化——透视投影