JS中BOM事件,JS样式特效,表格对象和表单操作
DOM事件
1.DOM中的事件可以分为两类
- 1.浏览器行为
如:文档加载完成,图片加载完成 - 2.用户行为
如:输入框输入数据,点击按钮
(2).常见的DOM事件
onload 浏览器已完成页面的加载
支持事件的对象 window image
onchange HTML 元素改变
onclick 用户点击 HTML 元素
onmousemove 用户移动鼠标
onmouseover 鼠标移动到元素上
onmouseout 鼠标移开某元素上
onmousedown 鼠标按下
onmouseup 鼠标松开
onkeydown 用户按下键盘按键
onkeyup 按下键盘松开
onblur 失去焦点
onfocus 获取焦点
(3).DOM事件绑定的二种方式
1.在元素的事件属性中直接绑定
如:
<button type="button" onclick="alert('haha')">点击看看</button>
2.通过元素对象的事件属性赋值(匿名函数实现)
如:
<button id="btn" type="button">点击看看</button>
var oBtn=document.getElmentById("btn");
oBtn.onclick=function(){
alert('haha');
}
JS样式特效
1.使用js获取或设置css样式(只能获取或设置行内样式)
语法:
node.style.属性名=属性值
注意:当属性名为蛇形命名时,要转换成小驼峰命名
node.style.color="red"
node.style.fontSize="30px"
2.使用js获取或设置css类名
语法:
node.className=类名
node.className="a1";
node.className="a1 b1";
获取元素的位置:
event.offsetX;
event.offsetY;
event.clientX;
event.clienY;
3.实现广告图所需事件
事件:当网页滚动时触发的事件
onscroll
获取网页滚动上边距的距离
document.body.scrollTop
或者
docuemnt.documentElement.scrollTop
4.日期时间对象
Date日期对象用于处理日期和时间
1、【创建】Date 对象:
var myDate=new Date();
创建空的Date对象时表示的值是当前的日期和时间
var myDate=new Date(dateString)
var myDate=new Date(year, month, day, hours, minutes, seconds, milliseconds);
日期字符串dateString:
规则:
1、日期字符串是可选的。
2、日期在前,时间在后。
3、日期常用(空格,横线-,逗号,)分隔,时间以(冒号:)分隔
2、Date对象的属性和方法
获取当前时间:
var d=new Date();
//获取年:
var year=d.getFullYear();
//获取月:
var month=d.getMonth();
//获取日:
var date=d.getDate();
//获取时分秒:
var hours=d.getHours();
var minutes=d.getMinutes();
var seconds=d.getSeconds();
//获取星期:
var day=d.getDay();
表格对象和表单操作
1、表格对象的属性
- 表格对象的边框:表格对象.border
- 表格对象的宽度:表格对象.width
2、表格对象的行操作(row)
表格对象的所有行: 表格对象.rows;
表格对象的行数: 表格对象.rows.length
表格对象的第一行: 表格对象.rows[0]
表格对象的最后一行:表格对象.rows[表格对象.rows.length-1]
行对象获取行下标: 行对象.rowIndex
删除行:删除指定下标行 表格对象.deleteRow(行的下标)
插入行:在指定下标行前插入行 表格对象.insertRow(行的下标)
返回值:返回行对象
3、表格对象的列操作(cell)
行对象的所有列: 行对象.cells;
行对象的第一列: 行对象.cells[0]
行对象的最后一列: 行对象.cells[行对象.cells.length-1]
列对象获取列下标: 列对象.cellIndex
删除列:删除指定下标列 行对象.deleteCell(列的下标);
插入列:在指定下标列前面插入列 行对象.insertCell(列的下标);
事件:
- 点击事件:onclick
- 失去焦点事件:onblur
- 获取焦点事件:onfocus
2.表单操作
一、 获取表单元素的方法
- 第一种方法,通过元素的name获取
- 第二种方法:通过元素的index获取
- 第三种方法:通过元素的id获取
例如:
<form name="fr1" id="fm" action="demo.html">
账号:<input type="text" id="tx1" />
密码:<input type="password" id="pwd1" />
确认密码<input type="password" id="pwd2" />
<input type="submit" value="登录" />
</form>
<script type="text/javascript">
//1.通过下标获取form元素
var fr1 = document.forms[0];
console.log(fr1);
//2.通过name属性获取form元素
var fr2 = document.forms["fr1"];
console.log(fr2);
//3.通过name属性获取form元素
var fr3 = document.fr1;
console.log(fr3);
//4.通过id属性获取form元素
var fm2 = document.forms["fm"];
console.log(fm2);
</script>
二、表单验证
return false : 在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.
案例一:
document.forms[0].onsubmit=function(){
var zh=document.forms[0].tx1.value;
if(zh==""){
alert("账号不能为空!!");
return false;
}
}
案例二:
<a href="demo.html">点击跳转</a>
var a1=document.getElementsByTagName("a")[0];
a1.onclick=function(){
return false;
}
JS中BOM事件,JS样式特效,表格对象和表单操作的更多相关文章
- JS中的事件、数组、节点对象处理
在JS代码中编写事件一定要保证页面在浏览器中加载时会把事件加载进页面 事件:在代码中可以通过一个动作来触发另一个行为的总称 A:事件的编写方式1 HTML标签中添加 onxxxx = "函数 ...
- js 中onclick 事件 点击后指向自己的对象,查找或者添加属性 用关键字this 传入参数 (可以改变原标签css)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 从零开始的JS生活(二)——BOM、DOM与JS中的事件
上回书说道,JS中变量.运算符.分支结构.循环和嵌套循环等内容.本回就由本K给大伙唠唠JS中的BOM.DOM和事件. 一."花心大萝卜"--BOM 1.震惊,FFF团为何对BOM举 ...
- JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象
前 言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...
- DOM 以及JS中的事件
[DOM树节点] DOM节点分为三大节点:元素节点,文本节点,属性节点. 文本节点,属性节点为元素节点的两个子节点通过getElment系列方法,可以去到元素节点 [查看节点] 1 document. ...
- JS中的事件以及DOM 操作
[DOM树节点] DOM节点分为三大节点:元素节点,文本节点,属性节点. 文本节点,属性节点为元素节点的两个子节点通过getElment系列方法,可以去到元素节点 [查看节点] 1 document. ...
- 怎么理解js中的事件委托
怎么理解js中的事件委托 时间 2015-01-15 00:59:59 SegmentFault 原文 http://segmentfault.com/blog/sunchengli/119000 ...
- js中冒泡事件和捕获事件
js中冒泡事件和捕获事件: 冒泡事件:冒泡事件是从里向外,即是从被绑定元素开始一直向外到达页面的所有祖先元素都会被触发,这 一过程被称为事件冒泡.这个事件从原始元素开始一直冒泡到DOM树的最上层 捕获 ...
- JS 学习笔记--JS中的事件对象基础
事件:JavaScript中的事件是由访问web页面用户的一系列操作引起的,比如点击鼠标,键盘按键等.当用户执行某些操作的时候再去执行一些代码. 事件模型:内联模型.脚本模型.DOM2模型 内联模型: ...
- 看懂此文,不再困惑于 JS 中的事件设计
看懂此文,不再困惑于 JS 中的事件设计 今天刚在关注的微信公众号看到的文章,关于JS事件的,写的很详细也很容易理解,相关的知识点都有总结到,看完就有种很舒畅的感觉,该串起来的知识点都串起来了.反正一 ...
随机推荐
- mysql 重新整理——存储引擎[三]
前言 要知道存储引擎这个东西,不是存储的意思,而是io操作. MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛 ...
- 整理ionic 系列——页面生命周期
前言 这是整理ionic的开篇,ionic 就不多介绍了,开发混合app的. 正文 Event Desc ionViewDidLoad 当页面加载的时候触发,仅在页面创建的时候触发一次,如果被缓存了, ...
- CC1TransformedMap链学习
跟着看了白日梦组长的视频,记录一下调试学习过程 CC1链学习 TransformedMap链 ObjectInputStream.readObject() AnnotationInvocationHa ...
- Flask、Tornado、Nginx搭建Https服务
其实Flask可以直接用tornado部署就行: # coding=utf-8 from tornado.wsgi import WSGIContainer from tornado.httpserv ...
- 力扣367(java&python)-有效的完全平方数(简单)
题目: 给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false . 进阶:不要 使用任何内置的库函数,如 sqrt . 示例 1: 输入: ...
- 聊聊日志硬扫描,阿里 Log Scan 的设计与实践
简介: SLS 新推出 Scan 功能,让未索引的字段也支持搜索(硬扫描模式),节省全量索引产生的构建和存储费用,同时 Scan 的运行时计算模式对于杂乱结构的日志数据有更好的适配,帮助企业客户实现数 ...
- KubeVela 插件指南:轻松扩展你的平台专属能力
简介: 本文将会全方位介绍 KubeVela 插件的核心机制,教你如何编写一个自定义插件.在最后,我们将展示最终用户使用插件的体验,以及插件将如何融入到 KubeVela 平台,为用户提供一致的体验. ...
- 让微服务开源更普惠,阿里云微服务引擎MSE全球开服
简介:MSE 于2020年10月在国内开启商业化服务,目前已吸引近万客户使用,用于在云上更低成本构建.更稳定运行微服务架构.此次,MSE 向阿里云国际站开放服务,旨在帮助更多客户享受到更加普惠的微服 ...
- Apsara Stack 技术百科 | 边缘场景智能云化,让云无处不在
简介:在过去十年间,随着计算技术的发展和移动互联网的广泛普及,各行业对数据本地计算和智能分析的需求与日俱增,越来越多的应用场景被接入了终端设备,导致终端侧的数据陡然增长,中心节点的处理算力不堪重负. ...
- 开源 1 年半 star 破 1.2 万的 Dapr 是如何在阿里落地的?
简介: Dapr 是 2019 年 10 月微软开源的可移植.事件驱动分布式运行时,它使开发人员能够轻松地构建运行在云平台和边缘的弹性而微服务化的无状态和有状态的应用程序,从而降低基于微服务架构构建现 ...