<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
大概的意思就是: 刚开始所有的 span
都是隐藏的,用hover
实现 鼠标停在哪个 li
它下面的 span
显示。
然后在用 click
实现点击其中的li
,它下面的 span
显示。、
问题就是现在 点击之后,在将鼠标悬停在 li
上,对应的span
并不会显示。
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
<li><span></span></li>
大概的意思就是: 刚开始所有的 span
都是隐藏的,用hover
实现 鼠标停在哪个 li
它下面的 span
显示。
然后在用 click
实现点击其中的li
,它下面的 span
显示。、
问题就是现在 点击之后,在将鼠标悬停在 li
上,对应的span
并不会显示。
li>span{
display:none;
}
li:hover>span{
display:block;
}
在js中在click事件里修改属性,将display改为block就行,但想实现点击一个,另一个隐藏,可以这样写
var lis = document.querySelectorAll('li');
spans = document.querySelectorAll('span'),
len1 = lis.length,
i;
for (var i = 0; i < lis.length; i++) {
spans[i].style.display = "";
lis[i].onclick = function(num) {
var temp = num,
len2 = spans.length,
j;
return function() {
for (j = 0; j < len2; j++) {
spans[j].style.display = "";
}
spans[temp].style.display = 'block';
};
}(i);
};
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
5 回答2k 阅读
3 回答2.4k 阅读✓ 已解决
这个意思???