我遇到了仅运行动画的打开/关闭功能的问题。
在这里查看我的小提琴http://jsfiddle.net/motocomdigital/X34XJ/7/
它正在播放,因为我在滑块动画中运行此功能。使用 bx 滑块。
直到第二个滑块旋转时才会出现此问题。这就是你必须在小提琴中做的事情才能让错误显示出来。
- 打开小提琴,
- 点击“打开面板”
- 关闭面板,
- 导航到下一张幻灯片
- 重复上述相同步骤(但在其中一张幻灯片上,让面板保持打开状态并导航到下一侧)
- 您会注意到,当您返回第一张幻灯片时,如果您尝试打开面板,它将打开,然后立即再次关闭。
- 如果您再次重复这些步骤,您会注意到面板开始打开、关闭,然后再次打开……啊啊啊好奇怪!!!
这是我的代码(虽然查看它的小提琴会更好)
$('#slider1').bxSlider({
auto: false,
speed: 800,
// runs after new slide has loaded
onAfterSlide: function(currentSlideNumber, totalSlideQty, currentSlideHtmlObject) {
var $fadeItems = $('a.openPanel, .panel, span'), // items that fade in
$panel = $(currentSlideHtmlObject).find('.panel'); // current slide panel
$fadeItems.removeAttr('style'); // this removes the inline style on all fadeItems, allowing css display: none; to take affect
$(currentSlideHtmlObject).find($fadeItems).fadeIn(); // current slide fadeIn items fade in
panelOpen = false; // panel state closed
panelAction = function() { // panel slide function
if (panelOpen === true) {
panelOpen = false;
$panel.animate({
left: '-300px'
});
} else {
panelOpen = true;
$panel.animate({
left: '0px'
});
}
};
// panel slide open/close button
$(currentSlideHtmlObject).find('a.openPanel').on('click', function(e) {
e.preventDefault();
panelAction();
});
}
});
如果有人可以帮助我了解我哪里出错了,我将不胜感激。
提前致谢。