我在我的网站上使用 BX Slider http://kellyannart.com/test/portfolios/ ..我面临一个问题..BX slider 工作完美,但有一些自定义jQuery我想使用它..我已经为bx-slider设置了以下参数 显示幻灯片数量:4 无限循环:true
我使用的自定义 jQuery 是:
jQuery(".single_portfolio_item_archive a").click(function(evt) {
evt.preventDefault();
jQuery("#imageBox").empty().append(
jQuery("<img>", { src: this.href})
);
});
我在 bx-slider 中总共有 5 个项目...但是因为 infiniteLoop 设置为 true,所以它们继续重复.. 问题是,对于前 5 个项目(这是我拥有的实际项目数),如果我们单击图像,则 div id="imageBox"会加载相同的图像(这是完美的)..但是当我们单击第 6 个项目(由于 infinteLoop 已设置为 true,因此会重复该项目)大图像将在新窗口中打开,而不是加载到 div id="imageBox"
此外,如果您单击前 5 个项目的“阅读更多”按钮,那么它会尝试在 div id="imageBox"内加载其 href,但是当您单击第 6 个项目的“阅读更多”按钮时,它的行为完美(即在浏览器中打开链接) 我不知道为什么会发生这种情况.. 有什么建议么? 预先感谢:)
最佳答案
我找到了造成这种情况的原因... 首先,我有一个投资组合页面的幻灯片启用/禁用选项,我为每个页面加载自定义 jquery 代码..但我没有放置 if 语句来检查幻灯片是否启用或禁用..所以第一个脚本应该加载当启用幻灯片放映时,第二个幻灯片应在禁用幻灯片放映时加载...在我的情况下,无论启用或禁用幻灯片放映,两者都会加载。 其次我尝试了 document.ready()
<?php
if( is_post_type_archive( 'portfolios' ) || is_taxonomy( 'styles' ) || is_taxonomy( 'colors' ) || is_taxonomy( 'textures' ) || is_taxonomy( 'years' ) ) : ?>
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery(".single_portfolio_item_archive a").click(function(evt) {
evt.preventDefault();
jQuery("#imageBox").empty().append(
jQuery("<img>", { src: this.href})
);
})
});
</script>
<?php endif; ?>
document.ready 确保脚本被应用到每个元素..甚至那些被 bx-slider 重复的元素。 :)
关于jquery - BX slider 和 Jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10251764/