html显示多个坐标点,如何实现点击页面中的一个按钮相应位置的div显示隐藏?...

这个可以通过给按钮点击事件传参来完成,下面是一个小例子

html

点击1

1

点击2

2

点击3

3

点击4

4

点击5

5

css

.one{

width: 100px;

height: 20px;

background-color: red;

}

js

var wrap = document.getElementById('wrap');

console.log(wrap);

var oButton = wrap.getElementsByTagName('button');

var num = oButton.length;

for(let i=0; i

// oButton[i].setAttribute('onclick' ,`change(${i},this)`);

oButton[i].addEventListener('click',function(){

var oDiv = document.getElementsByClassName('one')

if (oDiv[i].style.opacity == 1 || (oDiv[i].style.opacity == '')) {

oDiv[i].style.opacity = 0;

} else {

oDiv[i].style.opacity = 1;

}

})

}

--------------------补充:---------------

js中用opacity是为了不让隐藏的div破坏页面结构,如果用display的话,容易影响页面的结构。当然这视情况而定。

if语句判断是否为''是因为在一开始,opacity='',如果不加,一开始要点击两次,div才会隐藏。

--------------------补充:---------------

修改了一下js和html。每次对div和button的删除和增加,只要是成对的,那就都可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值