Function 如何使用相同的函数仅使一个元素可见
我正在尝试设置一个常见问题页面。我可以为每个问题分配一个单独的函数,将答案存储在我的HTML中并显示为隐藏,然后事件将触发函数以显示隐藏的答案。我试图找到一种方法来使用相同的函数来实现这一点。这是我到目前为止所做的,包括示例文本。现在发生的事情是,如果我点击第一个问题,所有的答案都会立刻出现,我显然不希望出现这个问题,而是希望一次出现一个答案,谢谢Function 如何使用相同的函数仅使一个元素可见,function,visibility,display,hidden,Function,Visibility,Display,Hidden,我正在尝试设置一个常见问题页面。我可以为每个问题分配一个单独的函数,将答案存储在我的HTML中并显示为隐藏,然后事件将触发函数以显示隐藏的答案。我试图找到一种方法来使用相同的函数来实现这一点。这是我到目前为止所做的,包括示例文本。现在发生的事情是,如果我点击第一个问题,所有的答案都会立刻出现,我显然不希望出现这个问题,而是希望一次出现一个答案,谢谢 <script> function displayAnswer () { var getParent =
<script>
function displayAnswer () {
var getParent = document.getElementsByClassName("questions");
var getParentNode = getParent[0];
var child = getParentNode.childNodes[3];
child.style.visibility = "visible";
var getParent = document.getElementsByClassName("questions");
var getParentNode = getParent[1];
var child = getParentNode.childNodes[3];
child.style.visibility = "visible";
var getParent = document.getElementsByClassName("questions");
var getParentNode = getParent[2];
var child = getParentNode.childNodes[3];
child.style.visibility = "visible";
}
函数displayAnswer(){
var getParent=document.getElementsByClassName(“问题”);
var getParentNode=getParent[0];
var child=getParentNode.childNodes[3];
child.style.visibility=“可见”;
var getParent=document.getElementsByClassName(“问题”);
var getParentNode=getParent[1];
var child=getParentNode.childNodes[3];
child.style.visibility=“可见”;
var getParent=document.getElementsByClassName(“问题”);
var getParentNode=getParent[2];
var child=getParentNode.childNodes[3];
child.style.visibility=“可见”;
}
如果我想买一件东西会怎么样
这花了600英镑,但我们提供折扣
如果我想买一件东西会怎么样
这花了600英镑,但我们提供折扣
如果我想买一件东西会怎么样
这花费了600英镑,但我们提供dis计数我现在已经解决了这个问题,使用关键字this,然后传递函数
function displayAnswer (element)
element.parentNode.secondElementChild.style.visibility= "visible";
这项工作符合要求:
document.getElementById('allquestions')。onclick=function(ev){
让child=ev.target;//get clicked元素
if(child.tagName='P'&&Array.prototype.indexOf.call(child.parentNode.children,child)==0)
child.nextElementSibling.style.display=“block”;
}
#allquestions div p:n第n个子项(2){display:none}
首先点击
这花了400英镑,但我们提供折扣
第二项
这花了500英镑,但我们提供折扣
第三项
这花了600英镑,但我们提供折扣
谢谢,我还没有完全理解你的代码,但我能欣赏它的简单性,谢谢你的回复