Python之路day13 web 前端(JavaScript,DOM操作)
参考链接:http://www.cnblogs.com/wupeiqi/articles/5433893.html
day13
1. CSS示例
2. JavaScript
3. DOM操作
上节内容回顾:
1. HTML标签
html/head/body/
input
div,span
a
p
br
span
table > tr行 th表头列 td表头列
h
form> action method enctype=;;;
select option
input系列:
text
password
email
button
submit
radio name属性相同
checkbox
reset
textarea
2.CSS
a. 存在形式
- <div style='k1=v1;k2=v2;'>
- <style></style>
- <link ...>
b. 选择器
<style>
.c1{
}
#i1{
}
div{
}
.c1,#i2{
}
.c1 .c2{
}
.c1 > .c2{
}
.c1:hover{
}
input[type='text']{
}
</style>
c. 样式
**** 田海龙 ****
color:
background-color:
font-size:
background-img:
background-position:
position:
fixed - 永远固定在浏览器窗口的某个位置
absolute - 固定在浏览器窗口的某个位置
relative - 单独无用
relative
absolute
padding: 内边距
margin: 外边距
top ...:
border: 1px shixu yanse
height: 100%
width:
display:
none 隐藏
block 块
inline 内联
inlie-block 内联+块级
float:
left
right
<div style='background-color:red;'>
<div style='float:left;'>adf</div>
<div style='float:right;'>adf</div>
<div style='clear:both'></div>
</div>
text-align:
line-height:
cursor
z-index:
opacity:
今日内容
一、后台管理示例
二、JavaScript
1. 存在形式
2. 位置
<body>
...;.
</body>
3.
a = 123;
var a = 123;
4. // /* */
5. 声明函数
// 普通函数
function func(arg){
alert(123);
}
func("alex")
// 普通函数,自执行函数
(function(arg){
alert(123);
})("alex")
(function(arg){})("alex")
// 匿名函数,当做参数传递
function(){
alert(123);
}
// 匿名函数的应用
function func(arg){
arg()
}
func(function(){alert(123)})
6. 基本数据类型
undefined // 为定义 var age;
function func(a1,a2){
alert(a1);
alert(a2);
}
func(1)
null // 空值
数字
var age = 123.123;
var v = typeof age; # number
alert(v);
isNaN
parseInt()
parseFloat(num)
字符串
obj.length 长度
obj.trim() 移除空白
obj.trimLeft()
obj.trimRight)
obj.charAt(n) 返回字符串中的第n个字符
obj.concat(value, ...) 拼接
obj.indexOf(substring,start) 子序列位置
obj.lastIndexOf(substring,start) 子序列位置
obj.substring(from, to) 根据索引获取子序列
obj.slice(start, end) 切片
obj.toLowerCase() 大写
obj.toUpperCase() 小写
obj.split(delimiter, limit) 分割
数组
obj.length 数组的大小
obj.push(ele) 尾部追加元素
obj.pop() 尾部获取一个元素
obj.unshift(ele) 头部插入元素
obj.shift() 头部移除元素
obj.splice(start, deleteCount, value, ...) 插入、删除或替换数组的元素
obj.splice(n,0,val) 指定位置插入元素
obj.splice(n,1,val) 指定位置替换元素
obj.splice(n,1) 指定位置删除元素
obj.slice( ) 切片
obj.reverse( ) 反转
obj.join(sep) 将数组元素连接起来以构建一个字符串
obj.concat(val,..) 连接数组
obj.sort( ) 对数组元素进行排序
字典
info = {name: 'alex',age: 18};
7. 序列化
JSON.stringify
JSON.parse
8. 转义
9. eval
10. 时间
var da = new Date();
11. 条件&循环&异常处理
12. 面向对象
// 面向对象
function Foo(name,age){
this.Name = name;
this.Age = age;
}
obj = new Foo('alex',18);
obj.Name
function Foo(name,age){
this.Name = name;
this.Age = age;
}
// 利用原型实现方法重用
Foo.prototype.show = function(){
alert(this.Name);
}
obj1 = new Foo('alex',18);
obj1.show()
obj2 = new Foo('alex',18);
obj2.show()
三、利用HTML文档+JavaScript+DOM实现操作HTML数据
1. 查找
document.getElementById 根据ID获取一个标签
document.getElementsByName 根据name属性获取标签集合
document.getElementsByClassName 根据class属性获取标签集合
document.getElementsByTagName 根据标签名获取标签集合
2. 间接查找
parentNode // 父节点
childNodes // 所有子节点
firstChild // 第一个子节点
lastChild // 最后一个子节点
nextSibling // 下一个兄弟节点
previousSibling // 上一个兄弟节点
parentElement // 父节点标签元素
children // 所有子标签
firstElementChild // 第一个子标签元素
lastElementChild // 最后一个子标签元素
nextElementtSibling // 下一个兄弟标签元素
previousElementSibling // 上一个兄弟标签元素
3. HTML标签样式操作
var tag = document.getElementById('i1');
tag.classList.add('c1') //给标签添加样式
tag.classList.remove('c1') //给标签移除样式
<div class='c1 c2'></div>
tag.className "c1 c2"
tag.classList ['c1','c2']
4. 文本操作
innerText 只获取文本
innerHTML 获取文本以及标签
innerText = "文本"
innerHTML = "HTML格式解析"
input:
document.getElementById('username').value
document.getElementById('username').value = "asdf"
PS:
<input type="text" id="key" value="请输入关键字" onfocus="keyFocus();" onblur="keyBlur();" />
onfocus: 获取焦点
onblur: 失去焦点
5. 属性操作
<div id='i1'></div>
<input id='ck' type="checkbox" />
自定义属性
attributes // 获取所有标签属性
setAttribute(key,value) // 设置标签属性
getAttribute(key) // 获取指定标签属性
内置属性:
obj.id
checkbox
- obj.checked true或false
6. 创建标签
对象方式 ***
7. js提交表单
document.getElementById('f1').submit();
8. 常用操作
console.log(..)
alert(..)
confirm(...)
var v = confirm('是否要删除?');
console.log(v);
location.href 获取当前URL
location.href = "http://www.oldboyedu.com" 重定向
location.reload() 刷新
setInterval
clearInterval
setTimeout
clearTimeout
var obj1= setInterval(function () {
console.log('1');
clearInterval(obj1);
},1000);
var obj2= setInterval(function () {
console.log('2');
clearInterval(obj2);
},1000)
9. 事件
1. 绑定事件
<div id='i1' onkeydown='func(this,event,123);'> 点我 </div>
function func(a,b,c){
// a -> 当前被点击的标签对象 document.getElementById('i1')
// b -> 当前事件相关的信息
// c = 123
}
2. 绑定事件 ***************
<div id='i1'> 点我 </div>
<script>
document.getElementById('i1).onclick = function(event){
// event -> 当前事件相关的信息
// this -> 当前被点击的标签对象
}
document.getElementById('i1).onclick = function(event){
// event -> 当前事件相关的信息
// this -> 当前被点击的标签对象
}
</script>
一个事件只能被绑定一次
3. 绑定事件
document.getElementById('i1').addEventListener('click',function(){
console.log(111);
},true)
document.getElementById('i1').addEventListener('click',function(){
console.log(222);
},true)
PS: addEventListener第三个参数
默认:
事件冒泡
捕获式
欠:
1. 点赞 +1 动画
2. JavaScript高级知识 - 词法分析
作业:
后台管理+所有示例
1. 后台管理布局
2. 左侧菜单
3. 莫泰对话框
4. 表格全选反选取消
5. 添加标签
6. 欢迎今天李磊上课
7. 5s之后 删除内容 移除
8. 时间流逝
9. 搜索框
<form action='https://www.sogou.com/web'>
<input type='text' name='query' />
<div>提交</div>
</form>
参考博客:
http://www.cnblogs.com/wupeiqi/articles/5643298.html
http://www.cnblogs.com/wupeiqi/articles/5602773.html
Python之路day13 web 前端(JavaScript,DOM操作)的更多相关文章
- Python之路day12 web 前端(HTML+ css)
HTML文档 文档树: Doctype Doctype告诉浏览器使用什么样的html或xhtml规范来解析html文档 有和无的区别 BackCompat:标准兼容模式未开启(或叫怪异模式[Quirk ...
- Web前端-JavaScript基础教程上
Web前端-JavaScript基础教程 将放入菜单栏中,便于阅读! JavaScript是web前端开发的编程语言,大多数网站都使用到了JavaScript,所以我们要进行学习,JavaScript ...
- Web前端-JavaScript基础教程下
Web前端-JavaScript基础教程下 <script>有6个属性: async对外部脚本有效,可以用来异步操作,下载东西,不妨碍其他操作. charset为src属性指定字符集. d ...
- javascript DOM 操作 attribute 和 property 的区别
javascript DOM 操作 attribute 和 property 的区别 在做 URLRedirector 扩展时,注意到在使用 jquery 操作 checkbox 是否勾选时,用 at ...
- javascript DOM 操作
在javascript中,经常会需要操作DOM操作,在此记录一下学习到DOM操作的知识. 一.JavaScript DOM 操作 1.1.DOM概念 DOM :Document Object Mode ...
- javascript DOM操作之 querySelector,querySelectorAll
javascript DOM操作之 querySelector,querySelectorAll
- javascript DOM 操作基础知识小结
经常用到javascript对dom,喜欢这方便的朋友也很多,要想更好的对dom进行操作,这些基础一定要知道的. DOM添加元素,使用节点属性 <!DOCTYPE html PUBLIC ...
- web前端+javascript+h5电子书籍和实战分享
有很多前端伙伴们学习前端很多了,但是如何能成为优秀的程序员呢,前端必学的知识点相信学习前端的伙伴们心里都非常清楚.主要的三要素包括HTML.CSS和JavaScript.那么学好JavaScript是 ...
- python 全栈开发,Day52(关于DOM操作的相关案例,JS中的面向对象,定时器,BOM,client、offset、scroll系列)
昨日作业讲解: 京东购物车 京东购物车效果: 实现原理: 用2个盒子,就可以完整效果. 先让上面的小盒子向下移动1px,此时就出现了压盖效果.小盒子设置z-index压盖大盒子,将小盒子的下边框去掉, ...
随机推荐
- python全栈开发从入门到放弃之装饰器函数
什么是装饰器#1 开放封闭原则:对扩展是开放的,对修改是封闭的#2 装饰器本身可以是任意可调用对象,被装饰的对象也可以是任意可调用对象#3 目的:''' 在遵循 1. 不修改被装饰对象的源代码 2. ...
- ajax参数补充
ajax参数补充 contentType 当我们使用form表单提交数据时,有一个enctype属性,默认情况下不写 此时我们提交数据时,会默认将数据以application/x-www-form-u ...
- Linux系统常用命令示例
1.在跟下创建一个目录,目录的名字为data # mkdir /data2.在data目录里创建一个文件,文件名为yunjisuan.txt # touch /data/yunjisuan.txt3. ...
- 88. Merge Sorted Array(从后向前复制)
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...
- 性能调优之MySQL篇一:MySQL性能计数器
计数器 计数器分析 Threads_connected 表示当前有多少个客户连接该mysql服务器,连接数是否过多,网络是否存在问题,它是动态变化的,当达到最大连接数时,数据库系统就不能提供更多的连接 ...
- TOSCA自动化测试工具--Log defect
1.执行完用例后,对于失败的用例进行分析,如果有缺陷,可以提对应的缺陷 2.在issues模块, 右键创建自己需要的文件夹,然后在文件夹上右键找到虫子图形点下,就可以创建缺陷了,填上对应的内容 3.如 ...
- vue下载文件
import fileDownload from 'js-file-download' let params = { ", ", "filename":&quo ...
- iOS开发之CoreData数据存储
iOS开发之CoreData数据存储 参考资料:https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/CoreD ...
- linux命令——chmod/chown
改变文件所有权chown 例如 sudo chown username myfile 1 myfile文件的所有权变为username. chown -R username /files/work 1 ...
- JS正则表达式从入门到入土(5)—— 量词
量词 很多时候,我们需要匹配一个连续出现很多次字符的字符串,比如,我们要匹配一个连续出现20次的数字的字符串,按照之前的写法: \d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d\d ...