如何为匹配元素添加和删除CSS样式

如何为匹配元素添加和删除CSS样式:
在网页中,往往有这样的要求,就是根据需求动态的改变网页的样式,比如说点击一个按钮就会改变另一个对象的外观等等,这个时候就需要动态的添加或者删除CSS样式,下面就通过实例简单介绍一下如何添加和删除CSS样式。

代码实例如下:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset=" utf-8"> 
<meta name="author" content="http://www.softwhy.com/" /> 
<title>蚂蚁部落</title> 
<style type="text/css">  
div  
{  
  width:100px;  
  height:100px;  
  border:1px solid red;  
}  
.bg{background-color:green;}  
</style>  
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>  
<script type="text/javascript">  
$(document).ready(function(){  
  $("#add").click(function(){  
     $("div").addClass("bg");  
  })  
  $("#del").click(function(){  
     $("div").removeClass("bg");  
  })  
})  
</script>  
</head>  
<body>  
<div></div>  
<button id="add">添加样式</button><button id="del">删除样式</button>  
</body>  
</html>
原文地址: http://www.softwhy.com/forum.php?mod=viewthread&tid=6257

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以按照以下方式封装一个select()函数: ```javascript function select(selector) { // 获取匹配元素 const elements = document.querySelectorAll(selector); // 返回一个对象,拥有对应的方法 return { html: function(content) { // 如果没有传参,则获取第一个元素的内容 if (!content) { return elements[0].innerHTML; } // 设置所有匹配元素的内容为传入的content elements.forEach(element => { element.innerHTML = content; }); // 返回修改后的对象 return this; }, css: function(style) { // 如果传入的是字符串,则获取第一个元素的对应样式值 if (typeof style === 'string') { return window.getComputedStyle(elements[0])[style]; } // 设置所有匹配元素样式为传入的style对象 elements.forEach(element => { Object.assign(element.style, style); }); // 返回修改后的对象 return this; }, click: function(eventHandler) { // 绑定点击事件 elements.forEach(element => { element.addEventListener('click', eventHandler); }); // 返回修改后的对象 return this; }, addClass: function(className) { // 添加指定class名 elements.forEach(element => { element.classList.add(className); }); // 返回修改后的对象 return this; }, removeClass: function(className) { // 删除指定class名 elements.forEach(element => { element.classList.remove(className); }); // 返回修改后的对象 return this; } }; } ``` 使用示例: ```javascript // 创建select对象 const obj = select("#myDiv"); // 链式调用方法,获取标签内容并设置样式 obj.html().css({ color: 'red' }); // 链式调用方法,绑定点击事件并删除指定class名 obj.click().removeClass('active'); ``` 请根据您的实际需求,完善相应的功能实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值