首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FadeOut元素

FadeOut元素
EN

Stack Overflow用户
提问于 2015-05-11 14:12:46
回答 4查看 126关注 0票数 1

我试图使用代码来找出元素

代码语言:javascript
复制
$('[title!="head"]').each(function () {
    $(this).fadeOut(100);
});

使用上述代码,所有元素(包括带有$('[title="head"]')的元素)都会逐渐消失。

代码在这种情况下工作得很好。

代码语言:javascript
复制
$('[title="head"]')

如有任何意见,将不胜感激。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-05-11 14:17:53

您可以使用filter过滤具有title而不是"head“的元素。

Demo

代码语言:javascript
复制
$(document).ready(function() {
  $('div')
    .filter(function() {
      return $(this).attr('title') !== 'head';
    })
    .fadeOut(100);
});
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<div title="head">HEAD</div>
<div title="myhead">MY HEAD</div>
<div title="your head">YOur HEAD</div>
<div title="head">Again HEAD</div>
<div title="headNo">HEAD No</div>

票数 0
EN

Stack Overflow用户

发布于 2015-05-11 14:24:51

只需使用:not()

代码语言:javascript
复制
$('body *:not([title="head"])').each (function(){
    $(this).fadeOut(100);
});
票数 0
EN

Stack Overflow用户

发布于 2015-05-11 14:31:50

您的选择器是问题所在:$('[title!="head"]')将选择,除了带有的元素之外,然后将其淡出。

这将使其更加清晰,请考虑以下标记:

代码语言:javascript
复制
<body>
  <div title="head">Hello World!</div>
</body>

在本例中,您的选择器将选择body,然后将其淡出,而由于<div><body>的子代,因此这将间接消失。你最终会得到这样的结果:

代码语言:javascript
复制
<body style="display: none;">
  <div title="head">Hello World!</div>
</body>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30169966

复制
相关文章

相似问题

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