使用javascript来定位类
Using javascript to target class
我在头部元素中有以下脚本:
<script>
function changeOpacity(className) {
var elems = document.getElementsByClassName(className);
var index = 0, length = elems.length;
for ( ; index < length; index++) {
elems[index].style.transition = "opacity 0.3s linear 0s";
elems[index].style.opacity = 0.8;
}
}
</script>
<style>
.red_box {width:100px;height:100px;opacity:1;background:red}
</style>
和以下结构中的主体元素:
<div onmouseover="changeOpacity('.red_box')">Click to fade red boxes</div>
<div class="red_box">Box 1</div>
<div class="red_box">Box 2</div>
<div class="red_box">Box 3</div>
我试图实现以下目标:当用户单击"单击以淡化红框"消息时,该函数应该使每个带有类"red_box"的div变为透明。我想要一些指针(请不要Jquery),谢谢!
调用函数时删除类名中的点:
onmouseover="changeOpacity('red_box')"
document.getElementsByClassName(className)
将类名作为字符串。如果您想使用CSS选择器,可以使用document.querySelectorAll('.red_box')
。
正如@pointy在他的评论中指出的,您还将不透明度设置为与初始值相同。可能需要将其更改为0到0.9之间的值,具体取决于所需的透明度级别。
您在css和函数中设置了相同的不透明度,还需要在onmouseover="changeOpacity('red_box')"
中删除点
将js函数和html更改为如下所示,它将很好地工作。
function changeOpacity(className) {
var elems = document.getElementsByClassName(className);
console.log(elems)
var index = 0,
length = elems.length;
for (; index < length; index++) {
elems[index].style.transition = "opacity 0.3s linear 0s";
elems[index].style.opacity = 0.5;
}
}
.red_box {
width: 100px;
height: 100px;
opacity: 1;
background: red
}
<div onmouseover="changeOpacity('red_box')">Click to fade red boxes</div>
<div class="red_box">Box 1</div>
<div class="red_box">Box 2</div>
<div class="red_box">Box 3</div>
相关文章:
- 绝对定位不适用于Javascript DIV
- 如何在CSS或Javascript中定位选定的属性(在HTML选项中)
- Javascript函数不工作.脚本定位问题
- 使用Javascript定位
- Javascript在条件语句内部定位
- Javascript文档.定位新窗口
- Javascript回调和地理定位API
- 在DOM上用Javascript定位Divs
- JavaScript类更改onClick重新定位图像
- 找不到定位器Javascript
- Javascript修复了滚动定位
- 将地理定位纳入Javascript天气功能
- 使用javascript来定位类
- 如何相对于画布大小的javascript定位对象
- 用javascript定位是一种很好的做法
- JavaScript 自动完成自制定位问题
- <选择>下拉菜单以定位JavaScript打开的文件
- 有没有人知道如何从哪个js文件中定位javascript操作
- 如何使用jquery定位javascript变量
- 如何在kentico门户引擎中定位javascript文件