我正在 WP 中开发一个页面,我在页面上有一组帖子,这些帖子添加到幻灯片中,并且在其中有一个隐藏的 div,其中隐藏了帖子画廊图像,这些画廊被分成帖子并生成就像帖子幻灯片一样,除了这些容器是实际的帖子内容。
当您单击幻灯片项目时,它会在隐藏容器中切换该相关项目的可见性并将其显示在滑块上方,然后您可以将其关闭以清除 div。目前我有这个在按钮上工作作为测试,你将在下面看到。
下面通过 wordpress 查询帖子生成的标记:
链接到帖子的按钮由 javascript 循环创建,计算帖子的数量:
<button class="toggles">work-1</button>
<button class="toggles">work-2</button>
<button class="toggles">work-3</button>
然后在它下面有一个名为 .project 的隐藏容器,当您单击一个项目时它会显示出来:
这是标记:
<article class="post royalSlider rsMinW"id="work-2 Exposure">
<img src="http://2mz:8888/wp-content/uploads/2013/02/interactive_table2.jpg"alt="" />
<div class="rsContent">
<span class="rsABlock txtLeft col1" data-move-effect="none">interactive_table</span>
<span class="rsABlock txtLeft col2" data-move-effect="none">
</span>
</div>
<img src="http://2mz:8888/wp-content/uploads/2013/02/table_build_03.jpg"alt="" />
<div class="rsContent">
<span class="rsABlock txtLeft col1" data-move-effect="none">table_build_03</span>
<span class="rsABlock txtLeft col2" data-move-effect="none">
</span>
</div>
<img src="http://2mz:8888/wp-content/uploads/2013/02/table_build01.jpg"alt="" />
<div class="rsContent">
<span class="rsABlock txtLeft col1" data-move-effect="none">table_build01</span>
<span class="rsABlock txtLeft col2" data-move-effect="none"></span>
</div>
<img src="http://2mz:8888/wp-content/uploads/2013/02/table_build02.jpg"alt="" />
<div class="rsContent">
<span class="rsABlock txtLeft col1" data-move-effect="none">table_build02</span>
<span class="rsABlock txtLeft col2" data-move-effect="none"></span>
</div>
<img src="http://2mz:8888/wp-content/uploads/2013/02/table_detail.jpg"alt="" />
<div class="rsContent">
<span class="rsABlock txtLeft col1" data-move-effect="none">table_detail</span>
<span class="rsABlock txtLeft col2" data-move-effect="none">
</span>
</div>
</article>
我遇到的问题是我有一些javascript,基本上将带有#work-前缀的顶部按钮链接到具有相同id =“#work-1,2,3 ...等的实际隐藏项目的ID " 像这样:
var projects = $('.project section article[id^="work-"]');
var num = projects.length;
//var nav = $('.projects section article')
console.log(num);
for (i=1; i<=num; i++) {
$('<button class="toggles" />').text('work-'+i).appendTo('#site-logo');
}
$('.toggles').live('click',
function(){
var thisIs = $(this).index();
$('.projects > .project section article[id^="work-"]').eq(thisIs).toggle();
$('.project').fadeIn(1000, 'easeInOutQuart');
});
它可以工作,但它总是忽略最后一个项目,所以我可以让其中 2 个工作,但是链接到按钮的项目之一根本无法工作。
有没有人知道为什么它不起作用或更好的方法来做到这一点?
谢谢,马克