質問がクリックされたときにスライドダウンおよびアップする回答を含む単純な FAQ ページを作成しようとしています。ユーザーがクラス「質問」のあるものをクリックすると、mytarget が '#' + [その質問の ID] + 'ans' になり、適切な回答がスライドダウンします。
toggleSlide 部分は、回答の ID を与えるだけで機能します。.click 関数が間違っているのか、$(this) を使用しているのか、あるいはその両方なのかわかりません。
$(document).ready(function() {
var qid = '';
var mytarget = '';
function toggleSlide() {
if ($(mytarget).css('display') == 'none') {
$(mytarget).slideDown(600, 'swing');
}
else if ($(mytarget).css('display') == 'block') {
$(mytarget).slideUp(600, 'swing');
}
};
$('.answer').hide();
$('.question').click(function() {
qid = $('this').id();
mytarget = '#' + qid + 'ans';
toggleSlide();
});
});