知道为什么我的 jQuery 无法执行吗?

发布于 2024-12-01 22:03:44 字数 1513 浏览 1 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

月亮邮递员 2024-12-08 22:03:44
var current = ( $('#testimonials .testimonial.show')? $('#testimonials .testimonial.show') : $('#testimonials .testimonial:first'));

jQuery 将始终返回一个对象(即使选择器不匹配任何元素),因此您的条件:

$('#testimonials .testimonial.show')

...将始终为 true。

检查长度:

   var current = ( $('#testimonials .testimonial.show').length)
                    ? $('#testimonials .testimonial.show') 
                    : $('#testimonials .testimonial:first');

下一期:

var next = current.next().length ? $('#testimonials .testimonial:first') : current.next();

我想你需要将其切换为:

var next = (!current.next().length) 
            ? $('#testimonials .testimonial:first') 
            : current.next();

当前,如果 .next() 为空,则选择它。

var current = ( $('#testimonials .testimonial.show')? $('#testimonials .testimonial.show') : $('#testimonials .testimonial:first'));

jQuery will always return an object(even if the selector doesn't match any element), so your condition:

$('#testimonials .testimonial.show')

...will always be true.

Check the length instead:

   var current = ( $('#testimonials .testimonial.show').length)
                    ? $('#testimonials .testimonial.show') 
                    : $('#testimonials .testimonial:first');

the next issue:

var next = current.next().length ? $('#testimonials .testimonial:first') : current.next();

I guess you need to switch this to:

var next = (!current.next().length) 
            ? $('#testimonials .testimonial:first') 
            : current.next();

Currently you select the .next() if it is empty.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文