我有一个小的帮助,人们可以点击一个链接的问题上,答案似乎很好,使用jQuery slideToggle()
。jQuery的滑块隐藏在第一:回退的人没有JavaScript
答案默认是隐藏的,你必须点击他们,使他们出现。 我不想在页面加载时有初始幻灯片。
的问题是,人们没有JavaScript无法做出答案出现。为了让这些人看到他们,他们应该是直接可见的。
这是可能的,如果我在当页面加载的答案滑动,但我找到解决办法不雅。任何想法如何保持我的解决方案?
我做了一个的jsfiddle这里:http://jsfiddle.net/s5HNd/3/
我的代码:
HTML:
<div>
<ul class="faqquestions">
<li>
<span class="faqlink">First Question</span>
<div class="faqreponse">First answer</div>
</li>
<li>
<span class="faqlink">Second question</span>
<div class="faqreponse">Second answer</div>
</li>
</ul>
</div>
CSS:
ul.faqquestions li { cursor: pointer; }
div.faqreponse { overflow: hidden; }
的JavaScript:
$(document).ready(function() {
'use strict';
$("ul.faqquestions li").each(function() {
var tis = $(this), state = false, answer =
tis.children(".faqreponse").hide().css('height', 'auto').slideUp();
$(this).children(".faqlink").click(function() {
state = !state;
answer.slideToggle(state);
});
});
});
总是有'noscript'标签? – adeneo 2013-02-15 20:18:35
@adeneo你是对的,但我不知道如何使用它,而不必输入两次答案:一旦进入隐藏div,一旦进入'noscript'标签。 – 2013-02-15 20:20:20
在这一点上,我甚至不担心没有JavaScript的人。它是当今网络体验中不可分割的一部分。我知道“进步增强”仍然在学校教授,但总的来说,我发现实际开发社区几乎不担心js被禁用等事情。除此之外,您采取的方法没有任何问题。 – 2013-02-15 20:23:32