前端-高潮 jQuery
jQuery:就是让页面动起来
参考手册:http://jquery.cuishifeng.cn/
DOM/BOM/javaScript 继承的类库 《---》模块
一、查找元素
二、操作元素
三、实例
一、jQuery的导入
版本:1.x 2.x 3.x 推荐使用1.x版本(兼容浏览器低版本)
<script src="jquery-1.12.4.js"></script>
<scirpt>
$. 或 jquery.来调用方法
</script>
jquery与dom相互转换:
jquery对象【0】 --》 dom对象
dom对象 --> $(dom对象)
二、查找元素
2.1选择器
1.id选择器
$('#id')
2.类选择器
$('.class')
3.标签选择器
$('p')
4.属性选择器
$('[alex]') 查找具有alex属性的标签
$('[alex="sb"]') 查找alex=‘sb’属性的标签
$('input[type="text"]') 超找input标签中text的标签
5.组合选择器
$(a,.class,#id) 以,隔开
6.层级选择器
$(div a) 子子孙孙,div下的a标签
$(div>a) 只找儿子
7.基本过滤
:first 第一个
:eq 索引0开始
:odd 偶数
2.2 筛选器
根据选择器选的东西,进行筛选
parent() 父标签
parents() 输出所有的父亲的标签
parentsUntil() 输出所有的父亲标签,直到什么为止
children() 所有的子标签
next() 下一个标签
nextall() 找到下面全部
nextUntil() 找到下面某一个为止
perv() 上一个标签
siblings() 所有的兄弟便签,除了自己
eq() 根据索引来查找
first() 第一个
last() 最后一个
hasClass() 有该属性
左侧菜单jquery实现
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.menu{
width: 80px;
border: 1px solid #ddd;
}
.header{
border: 1px solid #dddddd;
height: 30px;
background-color: #2459a2;
}
.hide{
display: none;
}
</style>
</head>
<body> <div class="menu">
<div class="item">
<div class="header">菜单1</div>
<div class="content">内容1</div>
</div>
<div class="item">
<div class="header">菜单2</div>
<div class="content hide">内容2</div>
</div>
<div class="item">
<div class="header">菜单3</div>
<div class="content hide">内容3</div>
</div>
<div class="item">
<div class="header">菜单4</div>
<div class="content hide">内容4</div>
</div>
</div>
<script src="jqure/jquery-1.12.4.js"></script>
<script>
$('.header').click(function(){
//this 当前点击的便签对象
//要是jquery 必须先进行转换
// $(this).next().removeClass('hide');
// $(this).parent().siblings().children('.content').addClass('hide')
//支持链式编程
$(this).next().removeClass('hide').parent().siblings().children('.content').addClass('hide');
//$(this).next().removeClass('hide').parent().siblings().find('.content').addClass('hide');
})
</script>
</body>
</html>
左侧菜单case
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<input id='i1' type="button" value="全选">
<input id="i2" type="button" value="取消">
<input id="i3" type="button" value="反选">
<table id='tb' border="1px">
<tr>
<th>选择</th>
<th>主机</th>
<th>IP</th>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>1.1.1.1</td>
<td>888</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>1.1.1.1</td>
<td>888</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>1.1.1.1</td>
<td>888</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>1.1.1.1</td>
<td>888</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>1.1.1.1</td>
<td>888</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>1.1.1.1</td>
<td>888</td>
</tr>
</table>
<script src="jquery-1.12.4.js"></script>
<script>
//使用jquery的each循环方法
//this 是代表每一个被过滤出来的对象(dom对象)
//$(dom) 进行转换
// $('#i1').click(function() {
// $('#tb :checkbox').each(function(k) {
// //console.log(this) 查看this的属性
// //console.log($(this))
//
// //dom的实现方式
//// if(this.checked){
//// this.checked=false;
//// }
//
// //第二种jquery的方法
// $(this).prop('checked',true)
// })
// });
$('#i1').click(function(){
//内部自己帮我们进行循环
$('#tb :checkbox').prop('checked',true);
});
$('#i2').click(function(){
$('#tb :checkbox').prop('checked',false); });
$('#i3').click(function(){
//进行反选的时候,无法使用简单的内部循环,so我们使用each方法
//each的k代表索引
$('#tb :checkbox').each(function () {
var tag=$(this).prop('checked')?false:true;
//使用三元运算判断当前的的选择状态
$(this).prop('checked',tag)
})
}) </script>
</body>
</html>
全选 反选 取消
二、操作元素
2.1文本操作
$(..).text() 获取文本
$(..).text(..) 设置文本 $(..).html()
$(..).html(..)
$(..).val()
$(..).val(..) 设置value
2.2 样式操作
addClass()
removeClass()
hasClass()
toggleClass() 其实就是对上面的封装
<input type="button" value="开关">
<div class="i1 hide">dedewfqf</div>
<script src="jqure/jquery-1.12.4.js"></script>
<script>
$('input').click(function () {
// if($('.i1').hasClass('hide')){
// $('.i1').removeClass('hide')
// }else {
// $('.i1').addClass('hide')
// }
$('.i1').toggleClass('hide')
})
</script>
开关灯case
2.3 属性操作
#对自定义的样式进行操作
$(..).attr(n) 获取该属性设置的值
$(..).attr(n,v) 设置该属性
$(..).removeAttr(n) 删除该属性
在jquery中1.x 2.x 中对checkbox radio使用该方法会出错,兼容性问题 #专门对checkbox radio选中的操作
$(..).prop('checked') 返回选中状态
$(..).prop('checked',‘true’) 设置选中 index() 索引操作 #css中style的操作
$('t1').css('样式名称', '样式值')
2.3 文档处理
#添加
append 在后面追加
prepend 在前面加
after 平级后加
before 平级前加 #删除
remove 移除标签
empty 只清空内容 #克隆
clone
2.4 位置操作
滑动滚轮与滚轮当前的位置
1 $(window).scrollTop(); 获取
$(window).scrollTop(); 设置并移动
3 $(window).scrollLeft(); 类似上面 位置操作
$(window).offset()
$('div').offset() 获取到的是一个数组
$('div').offset().top 获取数组中top
$('div').offset().left 获取数组中left
offset 是标签在文档中(可见窗口)的位置
postion() 是针对父标签的位置 如果对absolute标签,那他的父级是第一个relative标签(不管其他的层数) $(..).height() 标签真实高度
$(..).innerHeight() 真实高度+padding
$(..).outerHeight() 真实高度+padding+border
$(..).outerHeight(true) 真实高度+padding+border+margin
2.5事件
绑定事件
('..').click(function(){})
区别dom的 都没有on ('..').bind(‘click’,function(){})
('..').unbind(‘click’,function(){})
为事件解绑 $('.c').delegate('a', 'click', function(){})
$('.c').delegate('a', 'click', function(){})
deletage 有个特殊的使用方法
在html中,添加元素之后,无法进行绑定。使用该方法就可以动态绑定 ********************************
上面的三种方法都是基于on 与 off封装的
$('.c1').on('click', function(){})
$('.c1').off('click', function(){})
阻止事件发生
当事件的返回值为flase时,另外一个事件就不会执行
在dom中,绑定事件的时候需要加一个return
在jquerey中,直接在函数中return就可以了
案例:
当前页面 未连接 是红色字体,需要改成正常,颜色为black
$('font:contains("未连接")').text('正常')
$('font:contains("正常")').css({'color':'black'})
$('span:contains("2018")').text('2018-03-16')
前端-高潮 jQuery的更多相关文章
- 前端之jquery
前端之jquery 本节内容 jquery简介 选择器和筛选器 操作元素 示例 1. jquery简介 1 jquery是什么 jQuery由美国人John Resig创建,至今已吸引了来自世界各地的 ...
- 第四篇:web之前端之jquery
前端之jquery 前端之jquery 本节内容 jquery简介 选择器和筛选器 操作元素 示例 1. jquery简介 1 jquery是什么 jQuery由美国人John Resig创建,至 ...
- 【前端】:jQuery下
前言: 接上一篇博客: [前端]:jQuery上 一.jQuery属性操作 ① attr(设置或返回自定义属性值) input.select.textarea框中的内容, 可以通过attr来获取,但是 ...
- 【转】jQuery之前端国际化jQuery.i18n.properties
jQuery之前端国际化jQuery.i18n.properties 基于jQuery.i18n.properties 实现前端页面的资源国际化 jquery-i18n-properties
- 前端:jQuery笔记
前端:jQuery笔记 此系列文章乃是学习jQuery的学习笔记. Asp.net MVC Comet推送 摘要: 一.简介 在Asp.net MVC实现的Comet推送的原理很简单. 服务器端:接收 ...
- Python web前端 09 jQuery
Python web前端 09 jQuery 一.三个重要网址 http://jquery.cuishifeng.cn/ #中文查询网站 http://www.bootcdn.cn/ #引入jq ht ...
- 前端技术Jquery与Ajax使用总结
前端技术Jquery与Ajax使用总结 虽然主要是做的后端,但是由于有些时候也要写写前台的界面,因此也就学习了下Jquery和Ajax的一些知识,虽说此次写的这些对于前端大神来说有些班门弄斧的感觉,但 ...
- Golang 谷歌搜索api 实现搜索引擎(前端 bootstrap + jquery)
Golang 谷歌搜索api 实现搜索引擎(前端 bootstrap + jquery) 体验 冒号搜索 1. 获取谷歌搜索api 谷歌搜索api教程 2. 后台调用 程序入口 main.go // ...
- 第五章、前端之JQuery
目录 第五章.前端之JQuery 一.选择器 二.基本筛选器 三.样式操作 四.位置操作 五.文本操作 六.属性操作 七.文档处理 八.事件 九.动画效果 十.补充 第五章.前端之JQuery 一.选 ...
随机推荐
- UVA11636-Hello World!-水题
Hello World! Time limit: 1.000 seconds When you first made the computer to print the sentence "H ...
- [bzoj3191] [JLOI2013]卡牌游戏
概率DP. 首先由题解可得>_<,胜出概率只与剩余人数.与庄家的相对位置有关. 所以设f[i][j]表示剩下i个人,从庄家开始第j个人的胜利概率... 根据卡牌一通乱搞即可... #inc ...
- angularJS 与angujs-sku实现购物车组合查询
原网址:http://sentsin.com/web/1069.html demo : https://codepen.io/hzxs1990225/pen/VYyOdW 修复版文件下载:htt ...
- Generator函数异步应用
转载请注明出处: Generator函数异步应用 上一篇文章详细的介绍了Generator函数的语法,这篇文章来说一下如何使用Generator函数来实现异步编程. 或许用Generator函数来实现 ...
- Android开发——BroadcastReceiver广播的使用
想要了解广播定义及相关原理的可以看下这一篇BroadcastReceiver史上最全面解析 简单地对广播进行分类吧,广播有两个角色,一个是广播发送者,另外一个是广播接收者 广播按照类型分为两种,一种是 ...
- 在Ubuntu虚拟机搭建数据库系统
连接数据库: mysql -uroot -p 输入数据库密码即可登陆. 查看mysql版本信息: mysql> select version(); +---------------------- ...
- HDU 1232 畅通工程(模板——并查集)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1232 Problem Description 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出 ...
- Oracle_子查询
Oracle_子查询 子查询 --如何查得所有比"CLARK"工资高的员工的信息 select ename, sal from emp where ename = 'CLARK ...
- Oracle_创建用户_授予权限
Oracle_创建用户_授予权限 --创建用户,需要足够的权限 create create user hzf identified by hzf; --给用户bjsxt分配权限 grant ...
- java 静态导入 小结
之前看过静态导入这一块,在编程思想里,但是记不清了,今天搜了下,看到有一个博文写的不错,所以留做备注吧 总结: import static xxx.xxx 和普通导入的区别在于,普通导入是需要通过& ...