首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在悬停时只影响父元素。

在悬停时只影响父元素。
EN

Stack Overflow用户
提问于 2014-01-27 15:14:46
回答 2查看 480关注 0票数 0

我有多个div,其中包含相同的元素,我希望效果只发生在发生悬停的div中。

我有这个html:

代码语言:javascript
复制
<div class="item mit">
                    <div class="link"></div>

                    <div class="hidden">
                        <h2>mitagessen</h2>
                        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras dictum est nec elit ornare molestie.</p>
                        <img src="img/food-pic.jpg">
                    </div> <!-- end .hidden -->

                    <div class="image"><img src="img/food-pic.jpg"></div>
                    <div class="image-text">
                        <p>Tagesmenü</p>
                        <h2>mittagessen</h2>
                    </div>
                </div>

下面的jquery可以工作,但它隐藏了.image.image-text的所有实例,而不仅仅是正在悬停的div中的实例。

代码语言:javascript
复制
$('div.link').mouseenter(function() {
            // $(this).hide();
            $('div.image').hide();
            $('div.image-text').hide();
            $('.hidden').show();
        });

        $('div.hidden').mouseleave(function() {
            // $('div.link').show();
            $('div.image').show();
            $('div.image-text').show();
            $('.hidden').hide();
        });
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-27 15:16:09

您需要找到目标元素所属的.item元素,然后将其中的元素作为目标。

代码语言:javascript
复制
$('div.link').mouseenter(function () {
    // $(this).hide();
    var $item = $(this).closest('.item');
    $item.find('div.image').hide();
    $item.find('div.image-text').hide();
    $item.find('.hidden').show();
});

$('div.hidden').mouseleave(function () {
    // $('div.link').show();
    var $item = $(this).closest('.item');
    $item.find('div.image').show();
    $item.find('div.image-text').show();
    $item.find('.hidden').hide();
});
票数 0
EN

Stack Overflow用户

发布于 2014-01-27 15:15:51

使用this

代码语言:javascript
复制
 // hide .image which is inside current .item
 $('div.image',$(this).closest('.item')).hide();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21384440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档