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的更多相关文章

  1. 前端之jquery

    前端之jquery 本节内容 jquery简介 选择器和筛选器 操作元素 示例 1. jquery简介 1 jquery是什么 jQuery由美国人John Resig创建,至今已吸引了来自世界各地的 ...

  2. 第四篇:web之前端之jquery

    前端之jquery   前端之jquery 本节内容 jquery简介 选择器和筛选器 操作元素 示例 1. jquery简介 1 jquery是什么 jQuery由美国人John Resig创建,至 ...

  3. 【前端】:jQuery下

    前言: 接上一篇博客: [前端]:jQuery上 一.jQuery属性操作 ① attr(设置或返回自定义属性值) input.select.textarea框中的内容, 可以通过attr来获取,但是 ...

  4. 【转】jQuery之前端国际化jQuery.i18n.properties

    jQuery之前端国际化jQuery.i18n.properties 基于jQuery.i18n.properties 实现前端页面的资源国际化 jquery-i18n-properties

  5. 前端:jQuery笔记

    前端:jQuery笔记 此系列文章乃是学习jQuery的学习笔记. Asp.net MVC Comet推送 摘要: 一.简介 在Asp.net MVC实现的Comet推送的原理很简单. 服务器端:接收 ...

  6. Python web前端 09 jQuery

    Python web前端 09 jQuery 一.三个重要网址 http://jquery.cuishifeng.cn/ #中文查询网站 http://www.bootcdn.cn/ #引入jq ht ...

  7. 前端技术Jquery与Ajax使用总结

    前端技术Jquery与Ajax使用总结 虽然主要是做的后端,但是由于有些时候也要写写前台的界面,因此也就学习了下Jquery和Ajax的一些知识,虽说此次写的这些对于前端大神来说有些班门弄斧的感觉,但 ...

  8. Golang 谷歌搜索api 实现搜索引擎(前端 bootstrap + jquery)

    Golang 谷歌搜索api 实现搜索引擎(前端 bootstrap + jquery) 体验 冒号搜索 1. 获取谷歌搜索api 谷歌搜索api教程 2. 后台调用 程序入口 main.go // ...

  9. 第五章、前端之JQuery

    目录 第五章.前端之JQuery 一.选择器 二.基本筛选器 三.样式操作 四.位置操作 五.文本操作 六.属性操作 七.文档处理 八.事件 九.动画效果 十.补充 第五章.前端之JQuery 一.选 ...

随机推荐

  1. deeplearning.ai 人工智能行业大师访谈 Ruslan Salakhutdinov 听课笔记

    Ruslan Salakhutdinov一方面是苹果的研究主管,另一方面是CMU的教授. 1. Ruslan说自己进入深度学习完全是运气,他在多伦多大学读硕士,然后休学了一年,他在金融领域工作,那时候 ...

  2. gulp不完全入门教程

    引言 gulp 是基于 Nodejs 的自动任务运行器,能自动化地完成javascript/coffee/sass/less/html/image/css等文件的的测试.检查.合并.压缩.格式化.浏览 ...

  3. pm am 12小时格式化

    <div id="m_tiem">PM 14:26</div> tiem('m_tiem'); //pm am 12小时格式化function tiem(i ...

  4. 我的第五个网页制作:pre、html转义、abbr标签的使用

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  5. linux系统下Vi编辑器或者Vim编辑器设置显示行号、自动缩进、调整tab键宽度的技巧?

    工作中嫌vim 中一个tab键的宽度太大,linux系统默认,没改之前是一个tab键宽度是8个字符,想改成4个字符, 操作如下:(注意:这是在root用户下)cd ~vim .vimrc添加如下几行: ...

  6. git学习四:eclipse使用git提交项目

    支持原创:http://blog.csdn.net/u014079773/article/details/51595127 准备工作: 目的:eclipse使用git提交本地项目,提交至远程githu ...

  7. cesium编程入门(四)界面介绍及小控件隐藏

    感性认识 界面介绍,viewer Geocoder : 查找位置工具,查找到之后会将镜头对准找到的地址,默认使用bing地图 Home Button :视角返回初始位置. Scene Mode Pic ...

  8. YUI 阻止动态css加载

    skinnable动态加载 在YUI Module中,经常采用skinnable参数来动态加载css,如: YUI().use('w-paginator', function(Y) { }, requ ...

  9. 根据PV统计出前三的热门板块,并统计出热门板块下的用户数--方式一

    根据PV统计出前三的热门板块,并统计出热门板块下的用户数--方式一 测试数据 java代码 package com.hzf.spark.study; import java.util.ArrayLis ...

  10. 2.移植3.4内核-使内核支持烧写yaffs2

    在上章-制作文件系统,并使内核成功启动jffs2文件系统了 本章便开始使内核支持烧写yaffs2文件系统 1.首先获取yaffs2源码(参考git命令使用详解) cd /work/nfs_root g ...