js的classname和setattribute都可以给一个dom元素设置class属性吧,

js的classname和setattribute都可以给一个dom元素设置class属性吧,,第1张

属性 *** 作两种方式:

1. obj.xxx    俗称点 *** 作,比如: obj.className = 'red'

2. obj.setAttribute(name,value)  比如: obj.setAttribute('class','red')

却别在于:

.  *** 作不能 *** 作自定义属性

attribute可以

对于这里的class *** 作,其实是没什么区别的,建议用className,或者用H5里面提供的

classList *** 作class

js不可修改css中的属性,只能为指定的class的元素添加内联样式(style)

原生JS:

var dom = document.getElementsByClassName('dtd')

for(var i=0,len=dom.lengthi<leni++){

dom[i].style.color = 'red'

}Jquery

$('.dtd').css({color:'red'})

js通过class改变样式,可以使用Dom的className属性设置元素的样式。完整示例代码如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>测试页面</title>

<style type="text/css">

.themeCls {

color: #000

background-color: #f60

line-height: 25px

}

</style>

</head>

<body style="background-color:#ccc">

<span id="theme">这是一段测试文本<br />用来测试js通过class改变样式</span>

<script type="text/javascript">

var domTheme = document.getElementById("theme")

theme.className = "themeCls"

</script>

</body>

</html>

具体 *** 作步骤如下:

1、新建一个html文件,命名为t.html。

2、打开t.html。

3、在t.html中写入html结构代码,其中设置需要添加class类的元素的ID为“theme”。代码如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>测试页面</title>

</head>

<body style="background-color:#ccc">

<span id="theme">这是一段测试文本<br />用来测试js通过class改变样式</span>

</body>

</html>

4、设置一个css类,命名为”themeCls”,用于在javascript *** 作时给元素添加clsss。”themeCls”类为了方便观察效果,设置css规则为字体颜色为黑色#000,背景为橙色#f60,行高为25像素。代码如下:

<style type="text/css">

.themeCls {

color: #000

background-color: #f60

line-height: 25px

}

</style>

5、编写javascript代码,获取ID为“theme”的元素并设置元素的class类为“themeCls”,代码如下:

<script type="text/javascript">

var domTheme = document.getElementById("theme")

domTheme .className = "themeCls"

</script>

6、打开浏览器,浏览t.html页面,发现页面中”这是一段测试文本用来测试js通过class改变样式”这一段文本字体颜色呈现黑色,背景呈现橙色,说明我们为元素添加class类“themeCls”成功了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11903776.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存