Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >分隔器渐入渐出

分隔器渐入渐出
EN

Stack Overflow用户
提问于 2015-06-19 04:08:53
回答 1查看 100关注 0票数 0

我有一个由7个元素组成的菜单。每当单击一个元素时,它的内容就会以淡入的方式出现。如果单击另一个元素,则当前内容淡出,新内容淡入。我将这一概念应用于菜单中的7个元素中的3个,但我面临两个问题:( 1) A没有褪色,在进入和退出中存在一个时间问题,其中一个内容可能与另一个内容发生冲突。有什么帮助吗?

HTML:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<div id="menu" class="menu">
        <ul class="headlines">
             <li id="item1"onclick="checklist(this)"><button >A</button></li>
            <li id="item2"><button >B</button></li>
            <li id="item3"><button >C        </button></li>
            <li id="item4"><button>D         </button></li>
            <li id="item5"><button>E   </button></li>
            <li id="item6"><button>F       </button></li>
            <li id="item7"><button>G       </button></li>
<!--                  <li> <input type="button" value="animation" OnClick="checklist(this)"> </input>
  </li>-->
        </ul>
        </div>


        <div id="first">
<img id="image1" src="http://placehold.it/350x150"/>
<img id="image2" src="http://placehold.it/350x150"/>
<img id="image3" src="http://placehold.it/350x150"/>
<img id="image4" src="http://placehold.it/350x150"/>
<img id="image5" src="http://placehold.it/350x150"/>
<img id="image6" src="http://placehold.it/350x150"/>
<img id="image7" src="http://placehold.it/350x150"/>
<img id="image8" src="http://placehold.it/350x150"/>
<img id="image9" src="http://placehold.it/350x150"/>
<img id="image10"src="http://placehold.it/350x150"/>
</div>


        <div id="second">
        <img id="image1" src="http://placehold.it/350x150"/>
<img id="image2" src="http://placehold.it/350x150"/>
<img id="image3" src="http://placehold.it/350x150"/>
<img id="image4" src="http://placehold.it/350x150"/>
<img id="image5" src="http://placehold.it/350x150"/>
<img id="image6" src="http://placehold.it/350x150"/>
<img id="image7" src="http://placehold.it/350x150"/>
<img id="image8" src="http://placehold.it/350x150"/>
<img id="image9" src="http://placehold.it/350x150"/>
<img id="image10"src="http://placehold.it/350x150"/>
    </div>

        <div id="third">
        <img id="image1" src="http://placehold.it/350x150"/>
<img id="image2" src="http://placehold.it/350x150"/>
<img id="image3" src="http://placehold.it/350x150"/>
<img id="image4" src="http://placehold.it/350x150"/>
<img id="image5" src="http://placehold.it/350x150"/>
<img id="image6" src="http://placehold.it/350x150"/>
<img id="image7" src="http://placehold.it/350x150"/>
<img id="image8" src="http://placehold.it/350x150"/>
<img id="image9" src="http://placehold.it/350x150"/>
<img id="image10"src="http://placehold.it/350x150"/>
</div>

CSS:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#first
{
    display: none;
    width: 50%;
    height: 220px;
    margin:auto;
    padding-left: 150px;
    margin-top: -215px;

}
#first img 
{
    height: 100px;
    width: 100px;
    float:left;
    margin-right: 5%;
    cursor: pointer;
}

#second
{
    display: none;
    width: 50%;
    height: 220px;
    margin:auto;
    padding-left: 150px;
    margin-top: -215px;

}
#second img 
{
    height: 100px;
    width: 100px;
    float:left;
    margin-right: 5%;
    cursor: pointer;
}

#third
{
    display: none;
    width: 50%;
    height: 220px;
    margin:auto;
    padding-left: 150px;
    margin-top: -215px;

}
#third img 
{
    height: 100px;
    width: 100px;
    float:left;
    margin-right: 5%;
    cursor: pointer;
}

 li{
    list-style-type: none;
    font-size: 1.5em;
    height: 40px;
    width: 180px;
    text-align:right;    
    border-style: none;

}

.menu{

    width:150px;
    height: 350px;

   }

.menu li{  
position: relative;
  top:150px; 
  bottom: 0;
  left: 695px;
  right:0;
  margin: auto; 
  border-style:none;

}

JQUERY:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    $(document).on('click','#item1', function()
{ 
    $("#second. #third").fadeOut(2000, function(){
        $("#first").fadeIn(6000);
    });

});


$(document).on('click','#item2', function()
{ 
    $("#first, #third").fadeOut(2000, function(){
        $("#second").fadeIn(6000);
    });
});


$(document).on('click','#item3', function()
{ 
    $("#first, #second").fadeOut(2000, function(){
        $("#third").fadeIn(6000);
    });
});

JSFIDDLE:http://jsfiddle.net/ktyxr77y/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-19 04:31:59

这里有一点不同的方法,可以更可扩展:JS Fiddle

此外,为了提供真正的fadeIn/fadeOut交叉淡出,您可以在包装器中添加一个absolute位置(可能需要调整位置)。

增加CSS:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#first, #second, #third { position: absolute;}

Jquery:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$('li').on('click', function() {
    //get last character of the li
    var lastChar = $(this).attr('id').slice(-1);
    //set which section to change based on the last character of the li's id

    if (lastChar == 1) {
        section = $('#first');
    }
    if (lastChar == 2) {
        section = $('#second');
    }

    if (lastChar == 3) {
        section = $('#third');
    }

    $('#first, #second, #third').not(section).fadeOut(1000, function() {
        $(section).fadeIn(1000);
    });
});

注意:--我只为演示加速了转换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30937794

复制
相关文章
小程序-渐入渐出动画效果实现
在做小程序列表展示的时候,接到了一个需求。需要在列表展示的时候加上动画效果。在此献上小程序动画效果的教程。
腾讯NEXT学位
2019/08/12
3.2K0
小程序-渐入渐出动画效果实现
Taro React组件使用(1) —— Overlay 遮罩层【渐入渐出动画遮罩层】
Overlay 遮罩层 ---- 提供一个简单的 Overlay 遮罩层,在页面上的层级为 1026; 1. 使用指南 在 Taro 文件中引入组件,将组件放入src下的components文件夹中 import RuiOverlay from "../../components/RuiOverlay/RuiOverlay"; 2. 基础用法 2.1 组件使用 {/* 基本案例 */} <RuiOverlay isOpened={isShowBase} onClose={() => { this.
Rattenking
2022/11/02
1.9K0
小程序X轴渐入动画组件
先定义小程序中要施加渐入动画的DOM元素,注意该元素的css样式里要添加下opaction属性,通常设为0,意为从全透明开始渐入。另外还需要根据实际场景设定该元素的left或right值,以供动画方法定义滑动距离。
前端_AWhile
2022/05/10
7110
使用Liquidsoap生成实用音频和视频流
本篇是来自FOSDEM2020 Open Media devroom的演讲,演讲者是Romain Beauxis,演讲主题是“使用Liquidsoap生成实用音频和视频流”。
用户1324186
2020/02/21
1.2K0
Docker渐入佳境
本文介绍了Docker的基本概念和基础操作,并通过实例讲解了如何使用Nginx部署静态网站。首先介绍了Docker的基础概念,包括容器和镜像的概念,以及Dockerfile文件的基本结构和用法。然后通过具体的实例讲解了如何利用Docker部署Nginx服务器,并介绍了如何配置Nginx服务器和部署静态网站。最后还介绍了如何验证网站的访问,包括使用curl命令和浏览器访问等方式。
李郑
2018/01/07
9240
Docker渐入佳境
视频号,渐入佳境
马化腾将视频号看成是「全公司的希望」,这一点是没有任何夸大的成分的。可以说,如果微信在视频号这一战上无法获胜,不仅将会影响整个微信的生态,甚至将会影响整个公司的战略布局。庆幸的是,视频号正在从早期的「微创新」进入到大踏步发展的全新阶段。
孟永辉
2023/01/12
5260
视频号,渐入佳境
AQS --- 渐入佳境
AQS 使用一个 volatile 的 int 类型的成员变量来表示同步状态,通过内置的 FIFO 队列来完成资源获取和排队工作,将每条要去抢占资源的线程封装成一个 node 节点来实现锁的分配,通过 CAS 来完成对 state 值的修改。
贪挽懒月
2021/07/23
2700
Docker 渐入佳境
以网站服务为例,一般需要80端口,那么如何使容器的端口能被外界访问得到呢?这就要用到容器的端口映射。
李郑
2019/12/11
4990
Docker 渐入佳境
紫光“芯云布局”成绩渐出,围观群众感叹:未来就靠你们了!
在福州“首届数字中国建设成果峰会”上,倍感激动的不止是观众。当他们排着长队要在显微镜前一睹芯片芳容时,紫光人的情绪也被点燃了。
IT创事记
2022/06/16
8030
紫光“芯云布局”成绩渐出,围观群众感叹:未来就靠你们了!
vue中怎样实现弹出层动画效果?由上而下渐渐显示---封装成复用组件
子组件: <template> <div class="home"> <!-- 首先将要过渡的元素用transition包裹,并设置过渡的name --> <transition name="mybox"> <div class="box" v-show="boxshow"></div> </transition> </div> </template> <script> export default { data() { return {}; }
江一铭
2022/06/16
1.2K0
vue中怎样实现弹出层动画效果?由上而下渐渐显示---封装成复用组件
split分隔
split() : 把一个字符串分割成字符串数组 <script> var str="name=ww;value=ll"; var mm=str.split(";");// ["name=ww","value=ll"] // 对字符串数组中的每一个元素进行循环操作 “name=ww” for( var i=0;i<mm.length;i++) { var ss= mm[i].split("="); alert(ss)//结果是["na
wfaceboss
2019/04/08
2K0
分隔链表 !
给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。
五分钟学算法
2021/12/21
8310
分隔链表 !
【LeetCode 周赛】渐入佳境
在题解一中,我们会重复计算同一段交替子序列的,我们可以使用一次遍历,再交替子序列终止时避免重复回退到该子序列内部。需要注意的是,由于不同的交替子序列可能存在 1 位重叠,所以要把 i 指针指向 j 指针,而不是指向 j 指针的下一位,才能保证没有缺失。例如 [3,4,3,4,5,4,5] 数组,第一组交替子数组为 [3,4,3,4] 和第二组交替子数组为 [4,5,4,5] 这两组有重叠部分。
用户9995743
2023/09/09
2420
【LeetCode 周赛】渐入佳境
Python玩转各种多媒体,视频、音频到图片
我们经常会遇到一些对于多媒体文件修改的操作,像是对视频文件的操作:视频剪辑、字幕编辑、分离音频、视频音频混流等。又比如对音频文件的操作:音频剪辑,音频格式转换。再比如我们最常用的图片文件,格式转换、各个属性的编辑等。因为多媒体文件的操作众多,本文选取一些极具代表性的操作,以代码的形式实现各个操作。
ZackSock
2020/05/18
2.3K0
Python玩转各种多媒体,视频、音频到图片
HGE系列之三 渐入佳境
前两次“乱七八糟”的讲述了一些HGE的基础知识,不知看过的朋友有何感想,反正我自己都觉着有些不知所谓(!),但本着坚持到底的原则,今天继续献上拙文一篇,如果有朋友实在看不过去,大可不吝嘲笑、大肆放言 :)
用户2615200
2018/08/02
5360
HGE系列之三    渐入佳境
10 个实用的jQuery 代码片段
1. 图片预加载    (function($) { var cache = []; // Arguments are image paths relative to the current page. $.preLoadImages = function() { var args_len = arguments.length; for (var i = args_len; i--;) { var cacheImage = document.createElement
用户7705674
2021/09/24
7020
86. 分隔链表
给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 输入:head = [1,4,3,2,5,2], x = 3 输出:[1,2,2,4,3,5] 输入:head = [2,1], x = 2 输出:[1,2] class Solution { public ListNode partition(ListNode head, int x)
CaesarChang张旭
2021/06/21
3860
[Leetcode][python]Partition List/分隔链表
给定一个链表以及一个目标值,把小于该目标值的所有节点都移至链表的前端,大于或等于目标值的节点移至链表的尾端,同时要保持这两部分在原先链表中的相对位置。
蛮三刀酱
2019/03/26
5250
字符串分隔
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
喜欢ctrl的cxk
2019/11/08
7330
86. 分隔链表
给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。
张伦聪zhangluncong
2022/10/26
2700

相似问题

Javascript引号..。渐入渐出

14

不断淡入渐出

43

动画工具提示淡入渐出

10

渐缩图像

12

通过着色器获得渐晕效果

23
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文