jQuery:选择特定 DIV 下嵌套的所有 DIV

发布于 2024-08-28 15:06:49 字数 492 浏览 7 评论 0原文

我有一个与此类似的架构:

<div id="container">
<div>stuff here</div>
<div>stuff here</div>
<div>stuff here</div>
<div>stuff here</div>
</div>

我想使用 jQuery 在鼠标进入 #container 时隐藏光标。然而,当嵌套的 div 出现在顶部时,它并不完全那样工作。当鼠标悬停在 #container 中的任何 div 上时,如何隐藏鼠标光标。下面是光标隐藏代码。

        $('#container').mouseover(function()
        {
            $(this).css({cursor: 'none'});
        });

I have an architecture similar to this:

<div id="container">
<div>stuff here</div>
<div>stuff here</div>
<div>stuff here</div>
<div>stuff here</div>
</div>

I want to, using jQuery, hide the cursor when the mouse enters #container. However as the nested divs appear on top it doesn't quite work that way. How can I hide the mouse cursor when hovering over any of the divs within #container. Below is the cursor hiding code.

        $('#container').mouseover(function()
        {
            $(this).css({cursor: 'none'});
        });

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

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

发布评论

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

评论(4

分分钟 2024-09-04 15:06:49

我敢说,你可以只针对父级和子级 div 吗?

$('#container, #container div').mouseover(function()
{
    $(this).css({cursor: 'none'});
});

当然,我还没有对此进行测试,但必须使用类似的方法来更改带有 子项的

  • 的光标。
  • 您可以使用 children() 函数稍微扩展一下。

    Dare I say it, you could just target both parent and child divs?

    $('#container, #container div').mouseover(function()
    {
        $(this).css({cursor: 'none'});
    });
    

    Granted I haven't tested this, but had to use a similar method to change the cursor of a <li> with a <label> child.

    You could extend this slightly using the children() function.

    温柔女人霸气范 2024-09-04 15:06:49

    虽然正确答案有好几个,但我认为这个效率更高。

    $('#container').mouseover(function(){
       $(this).children().andSelf().css('cursor', 'none');
    });
    

    这样,您仅在 #container 上使用一个事件侦听器。

    Although there are several correct answer, I think this is more efficient.

    $('#container').mouseover(function(){
       $(this).children().andSelf().css('cursor', 'none');
    });
    

    This way you are only using one event listener, on the #container.

    情域 2024-09-04 15:06:49

    试试这个:

    $('#container > div').mouseover(function()
    {
        $(this).css('cursor', 'none');
    });
    

    Try this:

    $('#container > div').mouseover(function()
    {
        $(this).css('cursor', 'none');
    });
    
    酷遇一生 2024-09-04 15:06:49

    使用children()选择器。

    $('#container').children().mouseover(function()
        {
            $(this).css({cursor: 'none'});
        });
    

    Use the children() selector.

    $('#container').children().mouseover(function()
        {
            $(this).css({cursor: 'none'});
        });
    
    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文