我有一组'问题/答案'div配对,其中'answer'div被隐藏,并显示何时点击'question'div。集合中的第一对应该加载答案已经打开。在wordpress之外,这可以按预期工作:http://jsfiddle.net/Y724r/1/
当我将相同的代码输入wordpress循环时,最后一个问题加载打开而不是第一个:http://www.htcaz.com/web/?page_id=5(标题为“关于HTC”的配对是那个'回答'div应该打开的那个加载,但它做了最后一个)
循环:
<?php $subpages = new WP_Query("post_parent=5&post_type='page'&orderby=ID&order=ASC");
if($subpages->have_posts()) : while($subpages->have_posts()) : $subpages->the_post(); ?>
<div class="post">
<div class="question">
<?php the_title(); ?>
</div>
<div class="answer">
<?php the_content(); ?>
</div>
</div>
<?php endwhile; endif; ?>
jquery的:
jQuery(document).ready(function () {
jQuery(".answer").hide();
jQuery(".question").click(function () {
jQuery(".answer").not(jQuery(this).next(".answer")).hide();
jQuery(this).next(".answer").toggle();
});
jQuery('.question:first-child').trigger('click');
});
答案 0 :(得分:0)
删除此
jQuery('.question:first-child').trigger('click');
带
jQuery('.question:eq(0)').trigger('click');
jQuery(document).ready(function () {
jQuery(".answer").hide();
jQuery(".question").click(function () {
jQuery(".answer").not(jQuery(this).next(".answer")).hide();
jQuery(this).next(".answer").toggle();
});
jQuery('.question:eq(0)').trigger('click');
});
eq(n)
是jQuery
选择器通过索引号获取元素。因此,在页面加载时,您必须在trigger
div
.question
点击事件