2015-12-02 57 views
0

我有某种原因的麻烦,我似乎无法找出如何... 我想提出一个测验,以至极启动按钮启动,并具有“下一步”按钮和“上一个”按钮。当我打的启动按钮,问题1和回答1将拿出,并启动按钮自败,当我再点击下一步它加载在第二个问题,但不是答案2显示:无/块的onclick弄乱

我的代码:

// Hide/Show actions 
function hideStartButton() { document.getElementById("start-button").style.display = "none";} 
function showAnswers1() { document.getElementById("answers1").style.display = "block"; } 
function hideAnswers1() { document.getElementById("answers1").style.display = "none"; } 
function showAnswers2() { document.getElementById("answers2").style.display = "block"; } 
function hideAnswers2() { document.getElementById("answers2").style.display = "none"; } 

完整代码:http://jsfiddle.net/5jz092cb/

它当我不使用hideAnswer1()负载answers2;否则它出现blanc?

+0

更新我的答案......看来你需要遍历'的document.getElementById(“答案”)'元素,隐藏一切*除非*您想要的答案/元素,*匹配,则*显示元素来代替。 – John

+0

是但这需要我居然隐藏和显示它,那不是正常工作... – kobar1990

回答

1

CSS

.hidden {display: none;} 

的JavaScript

change('answers1','hidden'); 
change(document.getElementById('answers1'),'hidden'); 
//etc. 

function change(id,c) 
{ 
if (id_(id)) {id_(id).className = c; if (id_(id).className=='') {id_(id).removeAttribute('class');}} 
else if (id) {id.className = c; if (id.className=='') {id.removeAttribute('class');}} 
else {alert('Error: the class id \''+id+'\' was not found or has not yet been imported to the DOM.\n\nNew class intended: '+c);} 
} 

此外你需要隐藏显示图层同时经常在这些类型的场景,所以你可以很顺利需要做类似的事情通过并隐藏所有元素除了你要隐藏的一个。