day-04(jquery)
回顾:
js:
组成部分:
ECMAScript
BOM
DOM
变量声明 var 变量名=初始化值;
数据类型:
原始类型
Undefined Null
String Number Boolean:伪对象
通过typeof运算符可以判断出属于那种原始类型
typeof 值|变量
引用类型
Boolean Number
String
常用属性:length
常用方法:
substring
split
replace
Array
常用属性:length
注意:
array长度可以变化
array可以存放任意值
Math
Date
RegExp 常用方法:test()
直接量语法:
/正则表达式/
全局
decodeURI 解码
eval 计算字符串,解析成js代码执行
运算符:
关系运算符
等性运算符 == ===
语句:
选择 循环
////////////////////////////////
BOM(浏览器对象模型)
window:窗口
常用属性:
获取其他的四个对象
window.location....
常用方法:
消息框
alert confirm prompt
定时器
setInterval 周期
setTimeout 延迟
打开关闭
open close
location:定位
location.href:设置或者获取url
history:历史
go()
///////////////////////////////
事件和函数
掌握的事件:
焦点:
onfocus
onblur
表单事件
onsubmit
onchange 改变
页面或者元素加载
onload
最常用的方式:
window.onload=function(){};
单击
onclick
函数:
方式1:
function 函数名(参数列表){
函数体
}
方式2:
匿名函数
例如:window.onload=function(){}; 事件绑定函数:
方式1:通过元素的事件属性
<xxx onxxx="函数名(参数)"> 若参数为this:是将当前的dom对象传递给了函数
方式2:派发事件
dom对象.onxxx=function(){};
///////////////////////////////////////////
DOM(文档对象模型)
就是我们的html代码加载到内存中会形成一棵document树
节点:
文档节点 document
元素节点 element
属性节点 attribute
文本节点 text
获取一个元素节点:通过document获取
四个
操作元素的属性
dom对象.属性
操作元素的标签体
dom对象.innerHTML
////////////////////////
以前通过js获取对象的时候
var obj=document.getElementById("id"); funtion getId(id){
return document.getElementById("id");
} $("选择器")===>获取元素
//////////////////////////
js类库:
对常用的方法和对象进行封装,方便我们使用.
jQuery:
案例1-弹出广告
技术:
定时器
jQuery
///////////////////////////
jquery和html的整合
jquery是单独的js文件
通过script标签的src属性导入即可
获取一个jquery对象
$("选择器") 或者 jQuery("选择器")
dom对象和jquery对象之间的转换
dom对象===>jquery对象
$(dom对象)
jquery对象===>dom对象
方式1:
jquery对象[index]
方式2:
jquery对象.get(index)
页面加载:
js:
window.onload=function(){}//在一个页面中只能使用一次
jquery 在一个页面中可以使用多次
方式1:
$(function(){...})
方式2:
$(document).ready(function(){});
派发事件:
$("选择器").click(function(){...});
等价于 原生js中
dom对象.onclick=function(){....}
掌握事件:
focus
blur
submit
change
click
jquery中效果:
隐藏或展示
show(毫秒数) hide(毫秒数)
滑入或滑出
slideDown(毫秒数):向下滑入
slideUp(毫秒数):向上滑出
淡入或淡出
fadeIn(int):淡入
fadeOut(int):淡出
/////////////////////
案例1-步骤分析
1.页面加载成功之后$(function(){...}) 开始一个定时器 setTimeout();
2.编写展示广告方法
获取div,然后调用效果方法
设置另一个定时器 隐藏
3.编写隐藏广告的方法
获取div,然后调用效果方法
////////////////////////////////////
选择器总结:
基本选择器★
$("#id值") $(".class值") $("标签名") 了解:$("*")
理解:获取多个选择器 用逗号隔开
$("#id值,.class值")
层次选择器 ★
a b:a的所有b后代
a>b:a的所有b孩子
a+b:a的下一个兄弟(大弟弟)
a~b:a的所有弟弟
基本过滤选择器:★
:frist 第一个
:last 最后一个
:odd 索引奇数
:even 索引偶数
:eq(index) 指定索引
:gt(index) >
:lt(index) <
内容过滤:
:has("选择器"):包含指定选择器的元素
可见过滤:
:hidden 在页面不展示元素 一般指 input type="hidden" 和 样式中display:none
:visible
属性过滤器:★
[属性名]
[属性名="值"]
表单过滤:
:input 所有的表单子标签 input select textarea button
//input
////////////////////////
案例2-隔行换色
技术分析:
1.页面加载成功
2.获取所有的奇数行 添加一个css
3.获取所有的偶数行 添加一个css 属性和css操作总结:
对属性的操作:
attr():设置或者获取元素的属性
方式1:获取
attr("属性名称")
方式2:设置一个属性
attr("属性名称","值");
方式3:设置多个属性 json
attr({
"属性1":"值1",
"属性2":"值2"
})
removeAttr("属性名称"):移除指定属性
//添加class属性的时候
// attr("class","值");
addClass("指定的样式值"); 相当于 attr("class","指定的样式值");
removeClass("指定的样式值"); 对css操作:操作元素的style属性
css():获取或者设置css样式
方式1:获取
css("属性名")
方式2:设置一个属性
css("属性名","值")
方式3:设置多个
css({
"属性1":"值1",
"属性2":"值2"
});
获取元素的尺寸:
width()
height()
/////////////////////////////
案例3-全选或者全不选
需求:
就是将内容中复选框的选中状态和最上面的复选框状态保持一致
步骤分析:
1.确定事件 复选框的单击事件
2.函数中
a.获取该复选框的选中状态 attr(获取不了checked属性)|prop
b.获取所有的复选框修改他们的状态
注意:
若jquery版本>1.6 统一使用 prop操作元素的属性
/////////////////////////
/////////////////////////
/////////////////////////
/////////////////////////
案例4-省市联动
步骤分析:
1.确定事件 省份的下拉选变化的时候 change
2.编写函数
a.获取当前省份的value值
b.通过数组获取该省下的所有市 返回值:数组
c.遍历数组,拼装成option元素 追加到市下拉选即可
注意:每次改变的时候初始化市的值.
///////////////////////////
技术:
遍历数组
数组.each(function(){});
$.each(遍历数组,function(){}); 注意:
each的function中可以加两个参数 index和dom
index是当前遍历的索引值
dom指代的是当前遍历的dom对象(开发中一般使用this即可)
//////////////////////////////
设置或者获取value属性
jquery对象.val():获取
jquery对象.val("...."):设置
/////////////////////////////////////////
设置获取获取标签体的内容
html()
text() xxxxx():获取标签体的内容
xxxxx("....."):设置标签体的内容 设置的区别:
html:会把字符串解析
text:只做为普通的字符串
获取的区别:
html:获取的html源码
text:获取只是页面展示的内容
//////////////////////////////////////////////
创建一个元素: $("<标签></标签>")
///////////////////////
文档操作:
内部插入
a.append(c):将c插入到a的内部(标签体)后面
a.prepend(c):将c插入到a的内部的前面 appendTo
prependTo
外部插入
a.after(c):将c放到a的后面
a.before(c):将c放到a的前面 a.insertAfter(c)
a.insertBefore(c)
删除
empty() 清空元素
remove() 删除元素
/////////////////////////////////
/////////////////////////////////
/////////////////////////////////
案例5-左右移动
步骤分析:
1.确定事件 单击事件
2.编写函数:
移动一个:
右边的下拉选追加一个 左边的选中的第一个
移动多个:
左边选中的 追加到右边的下拉选中
移动全部:
将左边的所有option追加到右边的下拉选中 技术分析:
表单对象属性过滤选择器
:enabled 可用的
:disabled 不可用
:checked 选中的(针对于单选框和复选框的)
:selected 选中的(针对于下拉选) /////////////////////////////////////////////////// ///////////////////////////////////////////////////
///////////////////////////////////////////////////
上午回顾:
js类库:
对常见的方法和对象进行了封装,方便开发.
jquery和html的整合
script标签的src属性导入即可
获取jquery对象
$("选择器") jQuery("选择器")
dom对象和jquery对象之间的转换
dom>>>jquery
$(dom对象)
jquery>>>dom
方式1:
jquery对象[index]
方式2:
jquery对象.get(index)
jquery中的选择器:
基本选择器★
$("#id值") $(".class值") $("标签名") $("#one,#two,.mini")
层次选择器★
a b:后代
a>b:孩子
a+b:大弟弟
a~b:弟弟们 基本过滤选择器
:frist :last
:odd :even
:eq(index) :gt|lt..
内容过滤
:has(选择器)
可见性过滤
:visible
:hidden 指代是 input type=hidden 和 display:none
表单的过滤
:input
属性选择器:
[属性]
[属性=值]
表单对象属性过滤选择器
:enabled 可用的
:disabled 不可用
:checked 选中的(针对于单选框和复选框的)
★:selected 选中的(针对于下拉选) ///////////////////////////
派发事件:
jquery对象.事件(function(){.....});
例如:
$("#btn1").click(function(){.....});
/////////////////////////
页面加载成功
$(function(){
......
}) $(document).ready(function(){
////
});
///////////////////////////
属性和css
attr():设置或者获取属性(1.6版本之前)
attr("属性名"):获取
attr("属性名","值"):设置一个
attr({
"属性名":"值",
"属性名":"值"
}) prop():和attr用法一致(1.6版本之后) (了解)addClass("存在的样式") removeAttr()
(了解)removeClass() css():设置获取获取元素的样式
css("属性"):获取
css("属性","值"):设置
css({
"":"",
"":"",
"":""
}):设置多个 width()
height()
/////////////////////////////////////
文档处理:
内部插入(2组方法 任意掌握一组)
外部插入(2组方法 任意掌握一组)
删除(empty remove)
//////////////
val html text
val :设置或者获取values属性
html:获取或者设置标签体内容
////////////////////
遍历数组
方式1:
jquery对象.each(function(){});
方式1:
$.each(jquery对象,function(){});
/////////////////////////
在jquery中创建元素
$("<标签名>").prop(属性).html(内容)
////////////////////////////
day-04(jquery)的更多相关文章
- 【jQuery基础学习】04 jQuery中的表格操作及cookie插件的使用
这章本来准备写成jQuery的表单操作和表格操作的. 然而昨天吧jQuery的表单操作看完,发现全部在炒之前章节的剩饭,所以就没写出来. 那么今天就来看看表格吧. 因为平常做的都是公司的内部管理系统, ...
- 04 JQuery的使用
01 对网站首页优化--定时弹出广告 <!-- 作者:offline 时间:2018-09-09 描述:在使用JQ前要导入jquery-1.11.0.min.js包 注意区分js和jq的对象 - ...
- 新鲜出炉的30个精美的 jQuery & CSS3 效果【附演示和教程】
新鲜出炉的30个精美的 jQuery & CSS3 效果[附演示和教程] 作为最流行的 JavaScript 开发框架,jQuery 在现在的 Web 开发项目中扮演着重要角色,它简化了 ...
- 20+个可重复使用的jQuery代码片段
jQuery已经成为任何web项目的重要组成部分.它为网站提供了交互性的通过移动HTML元素,创建自定义动画,处理事件,选择DOM元素,检索整个document ,让最终用户有一个更好的体验. 在这篇 ...
- jquery选择器和基本操作
定义:jQuery 对象就是通过jQuery包装DOM对象后产生的对象.jQuery 对象是 jQuery 独有的. 如果一个对象是 jQuery 对象, 那么它就可以使用 jQuery 里的方法: ...
- 2014年下半年计划—写博客,旅游,带女朋友拍写真
前言:写这篇博客之前,一直在网上,看各位大牛写的博文,发布的视频等.当然由于自己的初来乍到,人生地不"熟"儿的,也吃了不少亏,走了不少弯路.本着一颗学习的心,携着向各 ...
- Web前端开发推荐阅读书籍、学习课程下载
转自http://www.xuanfengge.com/fe-books.html 前言 学校里没有前端的课程,那如何学习JavaScript,又如何使自己成为一个合格的前端工程师呢? 除了在项目中学 ...
- jQuery实例——jQuery实现联动下拉列表查询框--转http://www.cnblogs.com/picaso/archive/2012/04/08/2437442.html#undefined
jQuery实例--jQuery实现联动下拉列表查询框 在查询与列表显示的时候经常用到联动列表显示,比如一级选项是国家,二级选项是省,三级是市,这样的联动是联系的实时导出的,比如你不可能选择了四川 ...
- 【初探移动前端开发04】jQuery Mobile (中)
前言 昨天我们一起学习了一部分jquery mobile的知识,今天我们继续. 这些是些很基础的东西,有朋友觉得这个没有其它的好,但是学习下不吃亏嘛,我反正也不会一起学习基础啦. 例子请使用手机查看哦 ...
- 【锋利的jQuery】学习笔记04
第四章 jQuery中的事件和动画 一.jQuery中的事件 加载DOM 在JS中等待页面加载完成通常使用window.onload方法,而在jQuery中则使用$(document).ready() ...
随机推荐
- React 学习(六) ---- 父子组件之间的通信
当有多个组件需要共享状态的时候,这就需要把状态放到这些组件共有的父组件中,相应地,这些组件就变成了子组件,从而涉及到父子组件之间的通信.父组件通过props 给子组件传递数据,子组件则是通过调用父组件 ...
- bzoj2762-[JLOI2011]不等式组
求 \(x=k\) 时满足一元一次不等式 \(ax+b<c\) 的个数. 解出 \(\frac{c-b}{a}\) 之后取整,得到合法区间,用树状数组维护. 注意 \(a\) 的值域是 \([- ...
- 学习 Civil 3D二次开发从哪儿开始?
1.1 从哪儿开始 对于多数的工程设计人员,不完全具备上节所述的各种条件.对于Civil 3D的应用可能比较熟悉:但对于计算机语言,只限于上学时所学的一点基础知识,步入工作岗位后与计算机语言基本无缘: ...
- 接口由40秒到200ms优化记录
场景还原 一个业务逻辑较为复杂的业务,涉及到n次遍历,其中有循环查询/更新数据库,事务的管理,加上一些业务逻辑的计算.最初的接口,纯粹按照产品提供的相关业务逻辑,单纯的编码,耗时较长,近40秒的处理时 ...
- [51Nod 1584] 加权约数和
Description 在整理以前的试题时,他发现了这样一道题目:"求 \(\sum\sigma(i)\),其中 \(1≤i≤N\),\(σ(i)\) 表示 \(i\) 的约数之和.&quo ...
- BZOJ4321queue2——DP/递推
题目描述 n 个沙茶,被编号 1~n.排完队之后,每个沙茶希望,自己的相邻的两 人只要无一个人的编号和自己的编号相差为 1(+1 或-1)就行: 现在想知道,存在多少方案满足沙茶们如此不苛刻的条件. ...
- D. Flood Fill 区间DP 或lcs匹配
题意 给定一串数字 相同的连续的数字可以同时 转换成一个相同数字 问最小几次可以全部转换成一个相同的数字 法1:区间dp dp[l][r][0/1] 0表示l r区间转化成和最左边相同需要多少次 ...
- The Embarrassed Cryptographer POJ - 2635 同余模+高精度处理 +线性欧拉筛(每n位一起处理)
题意:给出两数乘积K(1e100) 和 一个数L(1e6) 问有没有小于L(不能等于)的素数是K的因数 思路:把数K切割 用1000进制表示 由同余模公式知 k%x=(a*1000%x+b* ...
- Basic remains POJ - 2305 同余模 高精度处理
题意 给出B(10以内大于0)进制下 p (1000位以内)和m(9位以内) 求 p%m 在b进制下等于什么 思路: 可以计算 1e9不会溢出Int所以m在int值以内 先求m 要处理p 每 ...
- 缺省源和 Vim 配置
缺省源 #include <bits/stdc++.h> #define x first #define y second #define pb push_back #define mp ...