使用 JQuery 选择最小的悬停元素

发布于 2024-09-02 03:59:18 字数 64 浏览 2 评论 0原文

我想问题就在标题中:我只想在用户单击时将样式仅应用于最小的悬停元素。我该如何选择这个元素?

谢谢。

I guess the question is in the title: I want to apply a style only to the littlest hovered element when the user clicks. How do do I choose this very element ?

Thanks.

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

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

发布评论

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

评论(1

別甾虛僞 2024-09-09 03:59:18

要在 div 上放置样式而不影响父级,可以使用 停止气泡event.stopPropagation(),如下所示:

$("div").click(function(e) {
  $(this).toggleClass("myClass");
  e.stopPropagation();
});

您可以在此处查看此操作的演示< /a>

对于 hover 情况,您实际上需要 mouseovermouseout 而不是 mouseentermouseleave.hover() 绑定到)在本例中,如下所示:

$("div").mouseover(function(e) {
  $(this).addClass("myClass").parents().removeClass("myClass");
  e.stopPropagation();
}).mouseout(function() {
  $(this).removeClass("myClass");
});​

您可以在此处查看此操作

To put a style on the div and not have the parent affected, you can stop the bubble with event.stopPropagation(), like this:

$("div").click(function(e) {
  $(this).toggleClass("myClass");
  e.stopPropagation();
});

You can see a demo of this working here

For the hover case, you actually would want mouseover and mouseout instead of mouseenter and mouseleave (which .hover() binds to) in this case, like this:

$("div").mouseover(function(e) {
  $(this).addClass("myClass").parents().removeClass("myClass");
  e.stopPropagation();
}).mouseout(function() {
  $(this).removeClass("myClass");
});​

You can see this in action here

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