jquery 使用 div 和图像优化悬停事件

发布于 2024-09-24 19:23:35 字数 428 浏览 2 评论 0原文

代码:

    $('.featured').hover(
    function() {
        $(this).addClass('active');
        $('img',this).fadeTo('slow', 0.5, function() {})
    },
    function() {
        $(this).removeClass('active');
        $('img',this).fadeTo('slow', 1, function() {})
    });

我该如何改进?

我记得有人曾经告诉我不要使用

$('img', this) ..

但我不知道如何访问悬停在任何其他方式上的 DIV 中的图像。

谢谢 !

code:

    $('.featured').hover(
    function() {
        $(this).addClass('active');
        $('img',this).fadeTo('slow', 0.5, function() {})
    },
    function() {
        $(this).removeClass('active');
        $('img',this).fadeTo('slow', 1, function() {})
    });

how can I improve this?

I recall someone telling me once not to use

$('img', this) ..

but I can't figure out how to access an image within the DIV being hovered over any other way.

thanks !

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

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

发布评论

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

评论(1

小…红帽 2024-10-01 19:23:35

您可以使用 .find(),如下所示:

$('.featured').hover(function(event) {
    $(this).addClass('active').find('img').fadeTo('slow', 0.5);
}, function() {
    $(this).removeClass('active').find('img').fadeTo('slow', 1);
});

这会找到任何 元素位于您悬停的元素内...跳过几个步骤 $(selector, context) 必须采取才能确定它确实< /em> $(context).find(selector) 调用。另外,也不需要动画回调...它们是可选的,因此如果您在其中执行任何操作,请将它们保留。

You can use .find(), like this:

$('.featured').hover(function(event) {
    $(this).addClass('active').find('img').fadeTo('slow', 0.5);
}, function() {
    $(this).removeClass('active').find('img').fadeTo('slow', 1);
});

This finds any <img> elements within the element you're hovering...skipping several steps $(selector, context) has to take to figure out it's really a $(context).find(selector) call. Also there's no need for the animation callbacks...they're optional so just leave them off if you're doing anything in them.

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