我有一个JQuery函数,用于在我的网站上为手风琴式Q / A制作动画。单击每个蓝色标题会导致答案文本扩展到视图中。
我想添加其他代码,以便点击问题标题可以转换" +"符号变成" - "符号(答案扩展)。当点击同一标题以折叠答案时,我希望同样的#34; - "成为" +"符号再一次。
有谁知道要添加什么来做到这一点?我目前的职能如下:
$(function(){$('.markdown-block .sqs-block-content h2')
.css('cursor','pointer');
$(".markdown-block .sqs-block-content h2")
.nextUntil("h2").slideToggle();
$(".markdown-block .sqs-block-content h2")
.click(function(){$(this).nextUntil("h2").slideToggle()})});
与Markdown Block相关的HTML,为简洁省略了正文:
<div class="sqs-block markdown-block sqs-block-markdown" data-block-type="44" id="block-yui_3_17_2_6_1466641371234_7523"> = $0
<div class="sqs-block-content">
<h2 id="Q/A title" style="cursor: pointer;">_</h2> = $0
<h2 id="Question-1" style="cursor: pointer;">+Question</h2> = $0
<h3 id="answer-paragraph-1" style="display: none;">_</h3>
<h3 id="answer-paragraph-2" style="display: none;">_</h3>
<h2 id="Question-2" style="cursor: pointer;">+Question</h2> = $0
<h3 id="answer-paragraph-1" style="display: none;">_</h3>
<h3 id="answer-paragraph-2" style="display: none;">_</h3>
</div>
</div>
这是以下每个问题的基本结构。
谢谢!
答案 0 :(得分:1)
如果$(this).nextUntil("h2")
指的是包含“+”的元素?只需添加点击功能,如:
$(".markdown-block .sqs-block-content h2").click(function(){
$(this).nextUntil("h2").slideToggle();
$(this).nextUntil("h2").text(($(this).nextUntil("h2").text() == "+Question"?"-Question":"+Question"));
})});