如何在每次点击时仅 "show" getElementsByClassName
How to only "show" getElementsByClassName on each individual click
function zxcv(el) {
el.style.display = "none";
el.parentNode.parentNode.getElementsByClassName("thishere")[0].style.display = 'block';
return false;
}
上面的代码不是我需要的,因为它只会激活元素的一次出现。
下面的代码不是我需要的,因为它只会在单击时激活所有出现的元素
function zxcv(el) {
el.style.display = "none";
var elements = el.parentNode.parentNode.getElementsByClassName("thishere");
for(var i in elements) {
elements[i].style.display = 'block';
}
return false;
}
请参阅 JS Fiddle here HTML 以及我目前使用它的位置(请注意,我会将 onLoad 选项更改为不换行,但 JSFiddle 似乎已经删除了框架和扩展,或者至少我看不到它:/,所以我怀疑这就是 "answer" 没有被揭示的原因。当我测试自己时,答案确实显示了) .
我的专业知识非常有限,我被卡住了;我只想要被点击到 "show" 的元素,而不是一次。请帮忙!
例如:
一 + 一 = 二
二 + 二 = 四
如果点击 'One +One =',则 'Four' 不会显示,只会显示 'Two'
您可以使用 nextElementSibling 获取下一个兄弟姐妹。不需要使用迭代。
function zxcv(el) {
el.style.display = "none";
var elements = el.nextElementSibling;
elements.style.display = 'block';
return false;
}
<a class="mathslink" href="#" rel="nofollow" onClick="zxcv(this)">One + One Equals</a>
<div class="thishere" style="display:none;"><span class="mathsanswer"><strong>Two</strong></span></div>
<a class="mathslink" href="#" rel="nofollow" onClick="zxcv(this)">Two + Two Equals</a>
<div class="thishere" style="display:none;"><span class="mathsanswer"><strong>Four</strong></span></div>
function zxcv(el) {
el.style.display = "none";
el.parentNode.parentNode.getElementsByClassName("thishere")[0].style.display = 'block';
return false;
}
上面的代码不是我需要的,因为它只会激活元素的一次出现。
下面的代码不是我需要的,因为它只会在单击时激活所有出现的元素
function zxcv(el) {
el.style.display = "none";
var elements = el.parentNode.parentNode.getElementsByClassName("thishere");
for(var i in elements) {
elements[i].style.display = 'block';
}
return false;
}
请参阅 JS Fiddle here HTML 以及我目前使用它的位置(请注意,我会将 onLoad 选项更改为不换行,但 JSFiddle 似乎已经删除了框架和扩展,或者至少我看不到它:/,所以我怀疑这就是 "answer" 没有被揭示的原因。当我测试自己时,答案确实显示了) .
我的专业知识非常有限,我被卡住了;我只想要被点击到 "show" 的元素,而不是一次。请帮忙!
例如:
一 + 一 = 二
二 + 二 = 四
如果点击 'One +One =',则 'Four' 不会显示,只会显示 'Two'
您可以使用 nextElementSibling 获取下一个兄弟姐妹。不需要使用迭代。
function zxcv(el) {
el.style.display = "none";
var elements = el.nextElementSibling;
elements.style.display = 'block';
return false;
}
<a class="mathslink" href="#" rel="nofollow" onClick="zxcv(this)">One + One Equals</a>
<div class="thishere" style="display:none;"><span class="mathsanswer"><strong>Two</strong></span></div>
<a class="mathslink" href="#" rel="nofollow" onClick="zxcv(this)">Two + Two Equals</a>
<div class="thishere" style="display:none;"><span class="mathsanswer"><strong>Four</strong></span></div>