web前端之CSS操作

文章目录

  • 一、CSS操作
      • 1.1 html元素的style属性
      • 1.2 元素节点的style属性
      • 1.3 cssText属性
  • 二、事件
      • 2.1 事件处理程序
        • 2.1.1 html事件
        • 2.1.2 DOM0事件(适合单个事件)
        • 2.1.3 DOM2事件(适合多个事件)
      • 2.2 事件之鼠标事件
      • 2.3 事件之Event事件对象
        • 2.3.1 Event.target
        • 2.3.2 Event.type
        • 2.3.3 Event.preventDefault
        • 2.3.4 Event.stopPropagation()
      • 2.4 事件之键盘事件
      • 2.5 事件之表单事件
          • 2.5.1 input事件
          • 2.5.2 select事件
          • 2.5.3 change事件
          • 2.5.3 reset事件、submit事件
  • 三、定时器
      • 3.1 setTimeout
      • 3.1 setInterval()
  • 四、防抖


一、CSS操作

1.1 html元素的style属性

使用网页元素节点的setAttribute方法直接操作网页元素的style属性。

div.setAttribute('style','background-color:red;'+'border:1px solid black;');

1.2 元素节点的style属性

var divStyle = document.querySelector('div').style;
divstyle.backgroundColor = 'red';
divstyle.border = '1px solid black';
divstyle.width ='100px';
divstyle.height = '100px';
divstyle.fontsize = '10em'

1.3 cssText属性

var divStyle = document.querySelector('div').style;
divStyle.cssText = 'background-color: 'red;'
+ border: 1px solid black;
+ 'height: 100px;
+ 'width: 100px;';

二、事件

2.1 事件处理程序

2.1.1 html事件

缺点:html和js没有分开

<!DOCTYPE htm1>
<htm1><head lang="en"><meta charset="UTF-8"><title>Js事件详解--事件处理</title></head><body><div id="div"><button id="btn1" onclick="demo()">按钮</button></div><script>function demo() {alert("he11o htm]事件处理");}</script></body></htmI>

onclick为鼠标事件

2.1.2 DOM0事件(适合单个事件)

优点:html和js是分离的

<!DOCTYPE htm1>
<htm1><head lang="en"><meta charset="UTF-8"><title>Js事件详解--事件处理</title></head><body><button id="btn">按钮</button><script>var btn=document.getElementById("btn")btn.onclick=function(){console.log("点击了");}</script></body></htmI>

2.1.3 DOM2事件(适合多个事件)

优点:事件不会被覆盖

<!DOCTYPE htm1>
<htm1><head lang="en"><meta charset="UTF-8"><title>Js事件详解--事件处理</title></head><body><button id="btn">按钮</button><script>var btn=document.getElementById("btn")btn.addEventListener("click",function(){console.log("点击了1");})btn.addEventListener("click",function(){console.log("点击了2");})</script></body></htmI>

2.2 事件之鼠标事件

在这里插入图片描述

<!DOCTYPE htm1>
<htm1><head lang="en"><meta charset="UTF-8"><title>Js事件详解--事件处理</title></head><body><button id="btn1">鼠标事件之单击</button><button id="btn2">鼠标事件之双击</button><script>var btn=document.getElementById("btn1")var btn=document.getElementById("btn2")btn1.onclick=function(){console.log("单击"); }btn2.ondblclick=function(){console.log("双击");}</script></body></htmI>

其他代码均和以上的类型相同。

2.3 事件之Event事件对象

事件发生以后,会产生一个事件对象,作为参数传给监听函数
Event对象属性

  • Event.Target
  • Event.type
    Event对象方法
  • Event.preventDefault
  • Event.stopPropagation
<!DOCTYPE htm1>
<htm1><head lang="en"><meta charset="UTF-8"><title>Js事件详解--事件处理</title></head><body><button id="btn1">按钮</button><script>var btn=document.getElementById("btn1")//Event事件对象  其实就是参数btn1.onclick=function(event){console.log(event); }</script></body></htmI>

2.3.1 Event.target

返回事件当前所在的节点,点击谁就打印出来谁。

//html代码为
// <p id="para"> Hello </p>
<!DOCTYPE htm1>
<htm1><head lang="en"><meta charset="UTF-8"><title>Js事件详解--事件处理</title></head><body><button id="btn1">按钮</button><script>var btn=document.getElementById("btn1")//Event事件对象  其实就是参数btn1.onclick=function(event){console.log(event.target); event.target.innerHTML="点击之后";/*点击按钮会变成这个字符串*/}</script></body></htmI>

2.3.2 Event.type

返回一个字符串,表示事件类型。事件的类型是在生成事件的时候。

2.3.3 Event.preventDefault

此方法取消浏览器对当前事件的默认行为,比如点击链接后,浏览器默认会跳转到另一个页面,使用这个方法以后,就不会跳转了。

btn.οnclick=function(e){e.preventDefault();console.log("点击A标签");} 

2.3.4 Event.stopPropagation()

stopPropagation方法阻止事件在 DOM 中继续传播,防止再触发定义在别的节点上的监听函数,但是不包括在当前节点上其他的事件监听函数

btn.οnclick=function(e){e.stopPropagation();//阻止事件冒泡console.log("btn");} 

2.4 事件之键盘事件

键盘事件由用户打击键盘触发,主要有keydown、keypress、keyup三个事件。

  • keydown: 按下键盘时触发
  • keypress: 按下有值的键时触发,即按下 Ctrl、Alt、Shift、Meta 这样无值的键,这个事件不会触发。对于有值的键,按下时先触发keydown事件,再触发这个事件。
  • keyup:松开键盘时触发该事件
username.οnkeypress=function(e){console.log("keypress事件");}

event对象
keyCode:唯一标识
var username=document.getElementById(“username”);
username.οnkeydοwn=function(e){
if(e.keyCode==13){
console.log(“回车”);
}
}

2.5 事件之表单事件

表单事件是在使用表单元素及输入框元素可以监听的一系列事件

2.5.1 input事件

input事件当 <input><selet><textarea> 的值发生变化时触发,即数据发生改变触发此事件。
对于复选框 ( <input type=checkbox> ) 或单选框 ( <input type=radio>),用户改变选项时,也会触发这个事件
input事件的一个特点,就是会连续触发,比如用户每按下一次按键,就会触发一次input事件。

var username=document.getElementById("username");
username.οninput=function(e){console.log(e.target.value);}
2.5.2 select事件

select事件在<input><textarea>里面选中文本时触发

//html代码如下
//<input id="test" type="text" value="select me"/>
var elem=document.getElementById('test');
elem.addEventListener('select',function(e){console.log("e.type");},false);
2.5.3 change事件

Change事件当 <input><selet><textarea> 的值发生变化时触发,它与input最大的不同就是不会连续触发,只有当全部修改完成时,才会触发。

var email=document.getElementById("email");
email.οnchange=function(e){console.log(e.target.value);}
2.5.3 reset事件、submit事件

这两个事件发生在表单对象 <form>上,而不是发生在表单的成员上。
reset事件当表单重置(所有表单成员变回默认值)时触发
submit事件当表单数据向服务器提交时触发。注意,submit事件的发生对象是<form>元素,而不是<buton>元素,因为提交的是表单,而不是按钮

<form id="myForm" onsubmit="submitHandle"><button onclick="resetHandle">重置数据</button><button>提交</button>
</form>
var myForm = document.getElementById("myForm")
function resetHandle(){myForm.reset();}
function submitHandle(){console.1og("提交");}

三、定时器

JavaScript 提供定时执行代码的功能成。。它们向任务队列添加定时任务
叫做定时器 (timer),主要由 setTimeout0 和 setlnterval0 这两个函数来完

3.1 setTimeout

setTimeout 函数用来指定某个函数或某段代码,在多少毫秒之后执行。它返回一个整数,表示定时器的编号,以后可以用来取消这个定时器。

var timerId=setTimeout(func|code,delay);

setTimeout 函数接受两个参数,第一个参数 fun|code 是将要推迟执行的函数名或者一段代码,第二个参数 delay 是推迟执行的毫秒数.

setTimeout(function(){console.log("定时器")},1000)

3.1 setInterval()

setinterval 函数的用法与 setTimeut 完全一致,区别仅仅在于 setintervl 指定某个任务每隔一段时间就执行一次,也就是无限次的定时执行

vat timer=setInterval(function(){console.log(2);},1000)	

通过setInterval方法实现网页动画

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#someDiv{width:100px;height:100px;background:red;}</style>
</head>
<body><div id="someDiv"></div><script>var div=document.getElementById('someDiv');var opacity=1;//opacity 透明度:范围0-1var fader=setInterval(function(){opacity-=0.5;if(opacity>0){ div.style.opacity=opacity; }else{clearInterval(fader);}},30);</script>
</body>
</html>

四、防抖

定义:对于短时间内连续触发的事件(滚动事件),让某个时间期限内,事件函数只执行一次。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/80982.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Dubbo+Zookeeper使用

说明&#xff1a;Apache Dubbo 是一款 RPC 服务开发框架&#xff0c;用于解决微服务架构下的服务治理与通信问题&#xff0c;官方提供了 Java、Golang 等多语言 SDK 实现。 本文介绍Dubbo的简单使用及一些Dubbo功能特性&#xff0c;注册中心使用的是ZooKeeper&#xff0c;可在…

Idea小操作

Idea操作 idea提取内容构成一个方法 idea提取内容构成一个方法

【MATLAB第65期】基于LSTM长短期记忆网络的多输入单输出数据预测未来思路介绍(短期预测)

【MATLAB第65期】基于LSTM长短期记忆网络的多输入单输出数据预测未来思路介绍&#xff08;短期预测&#xff09; 往期第13期已实现多输入单输出滑动窗口回归预测 多输入单输出滑动窗口回归预测 往期第54期已实现多输入多输出滑动窗口回归预测 多输入多输出滑动窗口回归预测 一…

【uniapp 小程序开发语法篇】资源引入 | 语法介绍 | UTS 语法支持(链接格式)

博主&#xff1a;_LJaXi Or 東方幻想郷 专栏&#xff1a; uni-app | 小程序开发 开发工具&#xff1a;HBuilderX 小程序开发语法篇 引用组件easycom Js文件引入NPM支持 Css文件引入静态资源引入css 引入静态资源如何引入字体图标&#xff1f;css 引入字体图标示例nvue 引入字体…

jdk1.7与jdk1.8的HashMap区别2-底层原理区别

jdk1.7与jdk1.8的HashMap区别1-基本结构与属性对比_ycsdn10的博客-CSDN博客 一、代码区别 1.代码数&#xff1a;JDK1.7与JDK1.8相差了一倍的代码 2.方法数&#xff1a;JDK1.7是40个&#xff0c;JDK1.8是51个&#xff08;只算基本方法&#xff09; 二、Hash差别 1.JDK1.7 st…

一、 Mysql索引

一、 Mysql索引 001 Mysql如何实现的索引机制&#xff1f; MySQL中索引分三类&#xff1a;B树索引、Hash索引、全文索引 002 InnoDB索引与MyISAM索引实现的区别是什么&#xff1f; MyISAM的索引方式都是非聚簇的&#xff0c;与InnoDB包含1个聚簇索引是不同的。 在InnoDB存储引…

【云原生】详细学习Docker-Swarm部署搭建和基本使用

个人主页&#xff1a;征服bug-CSDN博客 kubernetes专栏&#xff1a;云原生_征服bug的博客-CSDN博客 目录 Docker-Swarm编排 1.概述 2.docker swarm优点 3.节点类型 4.服务和任务 5.路由网格 6.实践Docker swarm 1.概述 Docker Swarm 是 Docker 的集群管理工具。它将 Doc…

最小二乘问题和非线性优化

最小二乘问题和非线性优化 0.引言1.最小二乘问题2.迭代下降法3.最速下降法4.牛顿法5.阻尼法6.高斯牛顿(GN)法7.莱文贝格马夸特(LM)法8.鲁棒核函数 0.引言 转载自此处&#xff0c;修正了一点小错误。 1.最小二乘问题 在求解 SLAM 中的最优状态估计问题时&#xff0c;我们一般…

vue结合three.js加载3D模型报404错误

使用vue结合three.js加载3D模型时报404的错误&#xff0c;加载字体库也会报404错误&#xff0c;同样的方法。 vue项目虽然使用npm install three安装了three&#xff0c;但是有些静态资源时读取不到的&#xff0c;当出现异常的404错误时&#xff0c;比如加载3D模型资源时&…

挑战Open AI!!!马斯克宣布成立xAI.

北京时间7月13日凌晨&#xff0c;马斯克在Twitter上宣布&#xff1a;“xAI正式成立&#xff0c;去了解现实。”马斯克表示&#xff0c;推出xAI的原因是想要“了解宇宙的真实本质”。Ghat GPT横空出世已有半年&#xff0c;国内外“百模大战”愈演愈烈&#xff0c;AI大模型的现状…

Oracle 聚合拼接的常用方式

Oracle常用函数&#xff1a;Oracle Database SQL Language Reference, 12c Release 2 (12.2) 1 listagg LISTAGG Syntax Description of the illustration listagg.eps (listagg_overflow_clause::, order_by_clause::, query_partition_clause::) listagg_overflow_claus…

【Docker】Docker的应用场景,Docker 的优点,Ubuntu Docker 安装,使用 Shell 脚本进行安装

作者简介&#xff1a; 辭七七&#xff0c;目前大一&#xff0c;正在学习C/C&#xff0c;Java&#xff0c;Python等 作者主页&#xff1a; 七七的个人主页 文章收录专栏&#xff1a; 七七的闲谈 欢迎大家点赞 &#x1f44d; 收藏 ⭐ 加关注哦&#xff01;&#x1f496;&#x1f…

uniapp根据高度表格合并

没有发现比较友好的能够合并表格单元格插件就自己简单写了一个,暂时格式比较固定 一、效果如下 二、UI视图+逻辑代码 <template><view><uni-card :is-shadow="false" is-full

Java课题笔记~ 使用 Spring 的事务注解管理事务(掌握)

通过Transactional 注解方式&#xff0c;可将事务织入到相应 public 方法中&#xff0c;实现事务管理。 Transactional 的所有可选属性如下所示&#xff1a; propagation&#xff1a;用于设置事务传播属性。该属性类型为 Propagation 枚举&#xff0c; 默认值为 Propagation.R…

Vue2源码分析-day1

初始化数据 vue中最核心的我们都知道那就是响应式数据&#xff0c;数据的变化视图自动更新。那么我们来new一个我们自己的vue 在index.html文件下加入如下代码&#xff0c;这也是vue最常见的基本结构。data已经有了下面我们来获取data的数据 <script src"./vue.js&qu…

IMV7.0

一、背景 经历了多个版本&#xff0c;基础内容在前面&#xff0c;可以使用之前的基础环境&#xff1a; v1&#xff1a; https://blog.csdn.net/wtt234/article/details/132139454 v2&#xff1a; https://blog.csdn.net/wtt234/article/details/132144907 v3&#xff1a; https…

centos7 部署Tomcat和jpress应用

目录 一、静态、动态、伪静态 二、Web 1.0 和 Web 2.0 三、centos7 部署Tomcat 3.1 安装、配置jdk 3.2 安装 Tomcat 3.3 配置服务启动脚本 3.3.1 创建用户和组 3.3.2 创建tomcat.conf文件 3.3.3 创建服务脚本(tomcat.service) 3.3.4 重新加载守护进程并且测试 四、部…

试图将更改推送到 GitHub,但是远程仓库已经包含了您本地没有的工作(可能是其他人提交的修改)

这通常是由于其他人或其他仓库推送到了相同的分支上&#xff0c;导致您的本地仓库和远程仓库之间存在冲突。 错误信息&#xff1a; To github.com:8upersaiyan/CKmuduo.git ! [rejected] main -> main (fetch first) error: failed to push some refs to github.com:8upers…

【干货】商城系统的重要功能特性介绍

电子商务的快速发展&#xff0c;商城系统成为了企业开展线上销售的重要工具。一款功能强大、用户友好的商城系统能够有效提升企业的销售业绩&#xff0c;提供良好的购物体验。下面就商城系统的重要功能特性作一些简单介绍&#xff0c;帮助企业选择合适的系统&#xff0c;打造成…

etcd

文章目录 etcd单机安装设置键值对watch操作读取键过往版本的值压缩修订版本lease租约&#xff08;过期机制&#xff09;授予租约撤销租约keepAlive续约获取租约信息 事务基于etcd实现分布式锁原生实现官方 concurrency 包实现 服务注册与发现Go 操作 Etcd 参考 etcd etcd 是一…