当前位置:首页 > JavaScript

js实现jq .css

2026-02-03 08:10:07JavaScript

js实现jq .css

实现 jQuery 的 .css() 方法

在原生 JavaScript 中,可以通过操作 DOM 元素的 style 属性或 getComputedStyle 方法来模拟 jQuery 的 .css() 功能。以下是几种常见场景的实现方式:

获取样式值

function getStyle(element, property) {
  return window.getComputedStyle(element).getPropertyValue(property);
}

// 使用示例
const div = document.querySelector('div');
const color = getStyle(div, 'color');

设置单个样式属性

function setStyle(element, property, value) {
  element.style[property] = value;
}

// 使用示例
const div = document.querySelector('div');
setStyle(div, 'color', 'red');

设置多个样式属性

function setStyles(element, styles) {
  for (const property in styles) {
    element.style[property] = styles[property];
  }
}

// 使用示例
const div = document.querySelector('div');
setStyles(div, {
  color: 'red',
  backgroundColor: '#fff',
  fontSize: '16px'
});

链式调用实现

function css(element, property, value) {
  if (typeof property === 'object') {
    for (const prop in property) {
      element.style[prop] = property[prop];
    }
  } else if (value === undefined) {
    return window.getComputedStyle(element).getPropertyValue(property);
  } else {
    element.style[property] = value;
  }
  return element;
}

// 使用示例
const div = document.querySelector('div');
// 获取样式
const color = css(div, 'color');
// 设置单个样式
css(div, 'color', 'blue');
// 设置多个样式
css(div, {
  color: 'red',
  background: 'yellow'
});
// 链式调用
css(div, 'color', 'green').css(div, 'fontSize', '20px');

注意事项

  • 使用 getComputedStyle 获取的是最终计算值,包括浏览器默认样式
  • 设置样式时,属性名可以使用驼峰式(如 backgroundColor)或短横线式(如 background-color
  • 对于需要带单位的数值(如 widthheight),需要手动添加单位
  • 修改内联样式会覆盖外部样式表中的规则

这些方法组合起来可以基本实现 jQuery .css() 方法的核心功能,包括获取样式、设置单个或多个样式属性,以及支持链式调用。

js实现jq .css

标签: jsjq
分享给朋友:

相关文章

vue实现js休眠

vue实现js休眠

Vue 中实现 JavaScript 休眠 在 Vue 中实现 JavaScript 休眠通常需要使用异步方式,以避免阻塞主线程。以下是几种常见方法: 使用 setTimeout 和 Pro…

js实现倒计时

js实现倒计时

使用 setInterval 实现倒计时 通过 setInterval 定时器每秒更新剩余时间,适用于简单倒计时场景。 function countdown(seconds, callback)…

原生js实现轮播图

原生js实现轮播图

基本结构搭建 HTML部分需要包含轮播图容器、图片列表及导航按钮。结构示例如下: <div class="slider-container"> <div class="slid…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

js实现类

js实现类

JavaScript 实现类的几种方式 JavaScript 是一种基于原型的语言,但在 ES6 之后引入了 class 语法糖,使得实现类更加直观。以下是几种常见的实现方式: 使用构造函数 传统的…

js 实现分页

js 实现分页

实现分页的基本逻辑 分页功能通常需要后端返回数据总量或总页数,前端根据当前页码和每页条数截取对应数据。以下是一个基于JavaScript的简单分页实现方案: 前端分页实现 假设已有从后端获取的完整…