jQuery 自定义元素旋转帮助
嘿! 我正在尝试编写一个简单的内容/图像旋转横幅,我可以单击向左或向右箭头来旋转内容。
我已经编码了所有内容并且它可以工作,但以非常初学者的方式,并且非常感谢一种更好、更强大的方式做吧。
jQuery("span.left-arrow").click(function() {
var visible = jQuery("#home_slider .slide:visible").attr("id");
var slide1 = jQuery("#home_slider #slide1");
var slide2 = jQuery("#home_slider #slide2");
var slide3 = jQuery("#home_slider #slide3");
if (jQuery(visible == "slide1")) {
jQuery("#home_slider #slide1:visible").fadeOut(function() {
slide3.fadeIn();
});
}
if (jQuery(visible == "slide2")) {
jQuery("#home_slider #slide2:visible").fadeOut(function() {
slide1.fadeIn();
});
}
if (jQuery(visible == "slide3")) {
jQuery("#home_slider #slide3:visible").fadeOut(function() {
slide2.fadeIn();
});
}
});
// right arrow
jQuery("span.right-arrow").click(function() {
var visible = jQuery("#home_slider .slide:visible").attr("id");
var slide1 = jQuery("#home_slider #slide1");
var slide2 = jQuery("#home_slider #slide2");
var slide3 = jQuery("#home_slider #slide3");
if (jQuery(visible == "slide1")) {
jQuery("#home_slider #slide1:visible").fadeOut(function() {
slide2.fadeIn();
});
}
if (jQuery(visible == "slide2")) {
jQuery("#home_slider #slide2:visible").fadeOut(function() {
slide3.fadeIn();
});
}
if (jQuery(visible == "slide3")) {
jQuery("#home_slider #slide3:visible").fadeOut(function() {
slide1.fadeIn();
});
}
});
感谢您的帮助!
Hey!
I am trying to code a simple content/image rotating banner that I can click left or right arrows to rotate the content..
I have everything coded and it works but in a very beginners way and would really appreciate a better, more robust way to do it.
jQuery("span.left-arrow").click(function() {
var visible = jQuery("#home_slider .slide:visible").attr("id");
var slide1 = jQuery("#home_slider #slide1");
var slide2 = jQuery("#home_slider #slide2");
var slide3 = jQuery("#home_slider #slide3");
if (jQuery(visible == "slide1")) {
jQuery("#home_slider #slide1:visible").fadeOut(function() {
slide3.fadeIn();
});
}
if (jQuery(visible == "slide2")) {
jQuery("#home_slider #slide2:visible").fadeOut(function() {
slide1.fadeIn();
});
}
if (jQuery(visible == "slide3")) {
jQuery("#home_slider #slide3:visible").fadeOut(function() {
slide2.fadeIn();
});
}
});
// right arrow
jQuery("span.right-arrow").click(function() {
var visible = jQuery("#home_slider .slide:visible").attr("id");
var slide1 = jQuery("#home_slider #slide1");
var slide2 = jQuery("#home_slider #slide2");
var slide3 = jQuery("#home_slider #slide3");
if (jQuery(visible == "slide1")) {
jQuery("#home_slider #slide1:visible").fadeOut(function() {
slide2.fadeIn();
});
}
if (jQuery(visible == "slide2")) {
jQuery("#home_slider #slide2:visible").fadeOut(function() {
slide3.fadeIn();
});
}
if (jQuery(visible == "slide3")) {
jQuery("#home_slider #slide3:visible").fadeOut(function() {
slide1.fadeIn();
});
}
});
Thanks for the help!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
也许是这样的:
编辑:点击处理程序现在允许您向前和向后“循环”。
使用此方法,您不必为每张幻灯片提供唯一的 ID,但幻灯片元素必须是
#home_slider
的唯一子元素。您可以使用以下内容进行初始化:
Something like this perhaps:
EDIT: the click handlers will now allow you to "loop" forward and backwards.
Using this method you don't have to give each slide a unique ID, but the slide elements must be the only children of
#home_slider
.You could initialize with something like: