我是Jquery的新手,想要在最后一个“下一个”按钮上实现手动幻灯片,页面重定向。
我使用CSS-Classes检测最后一个Slide-Element然后我想在下一个按钮中添加一个Class来声明它是整个幻灯片放映的最后一个按钮。
我的代码的一半工作:) - 如果我导航到最后一个幻灯片元素,Jquery将类“last”添加到按钮,如果我点击带有此类的按钮,我将被重定向到下一个页面 - 这就是我想要的。 但是,如果我导航到最后一个幻灯片元素,然后单击“prev”按钮几次,然后再单击下一个按钮,我会立即重定向,尽管类“最后”被删除了。
提前致谢,抱歉我的英语不好。
这是我的代码:
$(document).ready(function(){
$("#image_nav a:first").attr('id', 'firstSlide');
$("#image_nav a:last").attr('id', 'lastSlide');
$(".dritte_ebene li:first").attr('id', 'firstNavi');
$(".dritte_ebene li:last").attr('id', 'lastNavi');
//Redirect to the next page
$("a").click(function(){
if ($("#lastSlide").hasClass("activeSlide")) {
$("#weiter").addClass("last");
$('.slide').cycle('pause');
$(".last").click(function(){
window.location.replace("[+PJN_next+]");
});
}
});
//Remove "last" if prev is clicked
$('#zurueck').click(function(){
$("#weiter").removeClass("last");
});
});
答案 0 :(得分:0)
您忘记解除添加的点击功能。因此,下次单击.last
时,将执行重定向。将您的代码更改为此。允许您仅取消绑定重定向功能。
var lastHandler = function() {
window.location.replace("[+PJN_next+]");
};
$(document).ready(function() {
$("#image_nav a:first").attr('id', 'firstSlide');
$("#image_nav a:last").attr('id', 'lastSlide');
$(".dritte_ebene li:first").attr('id', 'firstNavi');
$(".dritte_ebene li:last").attr('id', 'lastNavi');
//Redirect to the next page
$("a").click(function() {
if ($("#lastSlide").hasClass("activeSlide")) {
$("#weiter").addClass("last").click(lastHandler);
$('.slide').cycle('pause');
}
});
//Remove "last" if prev is clicked
$('#zurueck').click(function() {
$(".last").removeClass("last").unbind('click', lastHandler);
});
});