js 关于动态添加class样式的学习

article/2025/11/7 17:19:22

 如果,我这里有一个需求。如下的页面代码

<body>
<input type="button" value="红" id="btn1"/>
<p id="p1">
2016年圣诞前的一个星期天下午,我推开窗,加州明媚的阳光洒在街道上,四季如春的旧金山和风拂面。对面屋外草地上金发碧眼的孩子们正兴奋的跑着跳着,看着家长给圣诞树装扮上满满的礼物 。眺望不远处,是Twin Peaks上跑步健身的青年男女大秀好身材,悠扬的教堂钟声飘过几个街区声声入耳。那时我30出头,在硅谷一家企业软件公司做产品经理,工作轻松,生活惬意,却觉得少了些什么。我叫伟耘,是阿里云网络团队的产品运营。工作十年了,分享生命中的三个瞬间,留作纪念。
</p>
</body> 

我现在要求,点击‘红’的按钮的时候,给下边的<p>标签设置一些样式,我可以用js代码来实现

如下:

<script>
window.onload = function(){var oBtn1 = document.getElementById("btn1");var oP = document.getElementById("p1");oBtn1.onclick = function(){oP.style.width = '300px';oP.style.background = 'red';oP.style.color = 'yellow';oP.style.border = '10px #ccc solid';oP.style.padding = '20px';}; 
};
</script>

这样完全能实现要求,但是,如果我要求的样式再多一点呢?这么写岂不是非常繁琐?

那我们能不能给它定义一个css样式的class,通过动态的添加class来实现点击按钮改变样式的需求呢?

毫无疑问,当然可以。

但是动态的添加class需要注意一下写法,因为class是js的保留字,不能直接使用,要通过className来动态的添加class

class  ==>   className

oP.class = 'red';   -- 错
oP.className = 'red';  --对

下边将刚刚用js实现的功能用动态添加class的方式实现一下;

<script>
window.onload = function(){var oBtn1 = document.getElementById("btn1");var oP = document.getElementById("p1");oBtn1.onclick = function(){oP.className = 'red';}; };
</script>
<style>
.red{width:300px;background:red;color:yellow;border:10px solid #CCC;padding:20px;}
</style>

【按钮点击之前】


【按钮点击之后】




http://chatgpt.dhexx.cn/article/GKV1CpPL.shtml

相关文章

jQuery通过id属性来获取元素,通过.addClass()方法来添加class.

Target Elements by ID Using jQuery 你还可以根据id属性来获取元素 首先用$("#target3")来选择id为target3的button元素。 注意&#xff0c;就像CSS一样&#xff0c;在id的名字前加上 #。 然后使用jQuery的.addClass()方法来添加 animated和fadeOutclass. 例如…

js给元素添加class样式

图中&#xff0c;左侧和右侧都需要添加不同的class类样式 结构&#xff1a; <div class"left"><div class"img_bg leftOne" click"clickLeft(企业文化)">企业文化</div><div class"img_bg leftTwo" click"…

jq获取和设置标签的css样式、jq给标签增加或移除class属性

1、jQuery获取和设置标签的css样式 jQuery既可以直接获取标签的css样式&#xff0c;也可以设置样式&#xff0c;包括行内、内部、外部样式&#xff1b;思路&#xff1a;先要选取这个标签&#xff0c;然后再获取或者设置样式&#xff1b;获取css属性&#xff1a; console.log(…

JavaScript给元素添加class属性

注意&#xff1a;element.classList.remove()、element.classList.add() — ie9及以下不兼容 // 移除div的class属性 obj.classList.remove(active);// 添加class属性值 // 方式一 obj.className new active;// 方式二 // obj.className new active;// 方式三&#xff1a;属…

jq中的addClass()方法与样式冲突

添加类样式方法 addClass()&#xff1a;向被选元素添加指定的类名 注意&#xff1a;该方法仅仅只是在原有基础上添加属性&#xff0c;不会覆盖已存在的 class 属性 提示&#xff1a;如需添加多个类&#xff0c;使用空格分隔类名 一、添加一个class属性 <style>.div {wid…

Dubbo原理简单分析

1.Dubbo原理分析 alibaba有好几个分布式框架,主要有:进行远程调用(类似于RMI的这种远程调用)的(dubbo、hsf),jms消息服务(napoli、notify),KV数据库(tair)等。 这个框架/工具/产品在实现的时候,都考虑到了容灾,扩展,负载均衡,于是出现一个配置中心(ConfigServer)的东西…

dubbo解析-介绍服务端和客户端启动和服务调用步骤

本文基于dubbo 2.7.5版本代码 前面的文章介绍了很多dubbo的各个组件&#xff0c;本文将对通过介绍启动和服务调用过程梳理一下这些组件&#xff0c;也让大家对dubbo的全局有一个了解。 文章目录 一、服务端启动二、客户端启动三、服务调用 一、服务端启动 1、spring启动调用后…

面试杀手锏之Dubbo服务调用过程

点赞再看&#xff0c;养成习惯&#xff0c;微信搜一搜【三太子敖丙】关注这个喜欢写情怀的程序员。 本文 GitHub https://github.com/JavaFamily 已收录&#xff0c;有一线大厂面试完整考点、资料以及我的系列文章。 前言 前面我已经带着大家过了服务暴露和服务引入两个流程了…

dubbo的服务调用原理

一、前言 在我们使用dubbo进行远程服务消费时&#xff0c;可以通过Reference注解或dubbo:reference来配置引用的接口&#xff0c;最终会生成远程服务的代理类&#xff0c;转化成ReferenceBean&#xff0c;这样我们就可以像调用本地接口方法一样使用远程服务提供的功能&#xf…

18. Dubbo原理解析-服务调用

服务消费方发起请求 当服务的消费方引用了某远程服务&#xff0c;服务的应用方在spring的配置实例如下&#xff1a; <dubbo:referenceid"demoService"interface"com.alibaba.dubbo.demo.DemoServ ice" /> demoService实例其实是代理工厂生产的代理…

Dubbo 原理和机制详解

Dubbo 是一款Java RPC框架&#xff0c;致力于提供高性能的 RPC 远程服务调用方案。作为主流的微服务框架之一&#xff0c;Dubbo 为开发人员带来了非常多的便利。 1. Dubbo核心功能 Dubbo主要提供了3大核心功能&#xff1a;面向接口的远程方法调用&#xff0c;智能容错和负载均…

从源码全面解析 dubbo 服务端服务调用的来龙去脉

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱敲代码的小黄&#xff0c;独角兽企业的Java开发工程师&#xff0c;CSDN博客专家&#xff0c;阿里云专家博主&#x1f4d5;系列专栏&#xff1a;Java设计模式、Spring源码系列、Netty源码系列、Kafka源码系列、JUC源码…

Dubbo原理和面试问题

今天来说一说dubbo的原理&#xff0c;首先我们要知道dubbo到底是什么&#xff0c;都能提供些什么服务&#xff1f; 一、dubbo是什么&#xff1f; dubbo是⼀个分布式服务框架&#xff0c;提供⾼性能和透明化的RPC远程服务调⽤⽅案&#xff0c;以及SOA服务治理方案。说白了其实…

springboot启动dubbo客户端连接服务端过程

前言 如果我问你,dubbo客户端启动的时候是如何连接服务器端的&#xff1f;这个过程比较复杂&#xff0c;今天我们一起学习起来~ 本文分以下几个部分 1、springboot启动dubbo需要配置 2、初始化Reference过程 3、小结 一、项目应用 1、引入jar包 <dependency><g…

dubbo实现原理机制

Dubbo的总体架构如图所示&#xff1a; 框架分层架构中&#xff0c;各个层次的设计要点&#xff1a; 服务接口层&#xff08;Service&#xff09;&#xff1a;该层是与实际业务逻辑相关的&#xff0c;根据服务提供方和服务消费方的业务设计对应的接口和实现。 配置层&#xff0…

Dubbo源码分析(三):Dubbo之服务端(Service)

如上图所示的Dubbo的暴露服务的过程&#xff0c;不难看出它也和消费者端很像&#xff0c;也需要一个像reference的对象来维护service关联的所有对象及其属性&#xff0c;这里的reference就是provider。由于ServiceBean实现了 &#xfeff;&#xfeff; InitializingBean接口&am…

Dubbo——初识RPC、Dubbo框架、使用直连方式实现Dubbo

文章目录&#xff1a; 1.RPC & 软件架构 1.1 单一应用架构 1.2 分布式微服务架构 1.3 RPC 2.Dubbo概述 2.1基本架构 2.2 dubbo支持的协议 3.直连方式实现dubbo 3.1 服务提供者的创建 3.2 服务消费者的创建 3.3 启动测试&#xff01;&#xff01;&#xff01; 1.…

分布式基本理解与Dubbo基本概念

学习dubbo之前&#xff0c;先要了解一下什么是分布式 分布式基础理论 什么是分布式系统 分布式系统是若干独立计算机的集合&#xff0c;这些计算机对于用户来说就像单个相关系统。 随着互联网的发展&#xff0c;网站应用的规模不断扩大&#xff0c;常规的垂直应用架构已无法…

Dubbo的原理和机制

Dubbo :是一个RPC框架&#xff0c;SOA框架&#xff1a; Dubbo缺省协议采用单一长连接和NIO异步通讯&#xff0c;适合于小数据量大并发的服务调用&#xff0c;以及服务消费者机器数远大于服务提供者机器数的情况。 作为RPC&#xff1a;支持各种传输协议&#xff0c;如dubbo,hes…

dubbo实现原理介绍

一、什么是dubbo Dubbo是Alibaba开源的分布式服务框架&#xff0c;它最大的特点是按照分层的方式来架构&#xff0c;使用这种方式可以使各个层之间解耦合&#xff08;或者最大限度地松耦合&#xff09;。从服务模型的角度来看&#xff0c; Dubbo采用的是一种非常简单的模型…