CSS3的transition动画效果在动态添加节点的时候无法实现的问题

woshidaniubi123 2015-09-06 05:44:03
我用css3的transition实现动画效果,在单页面下是完全没有问题的,问题在于我做一个手机翻页的效果,当将要翻到这一页的时候我把这个页面的内容清空,只留下背景图,同时把透明度调低,然后当这个页面呈现出来,再动态添加节点,这个时候transition的效果没有出现,直接出来的是变换以后的效果,贴上测试代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="css/jquery.fullPage.css">
<style>
.section {
text-align: center;
font: 50px "Microsoft Yahei";
background-color:#D4D4D4;
}
#wrapper {
background: url("images/bg_page_1.jpg");
height: 969px;
width: 640px;
margin: 0 auto;
text-align: center;
overflow: hidden;
}
#img4 {
transform: scale(0, 0);
transition: 1s;
}

</style>
<script src="js/jquery-1.8.3.min.js"></script>
<script src="js/jquery.fullPage.min.js"></script>
<script>
$().ready(function(){
$('#dowebok').fullpage({
sectionsColor: ['#4BBFC3', '#D4D4D4', '#7BAABE', '#f90'],css3:true,
afterLoad: function(anchorLink, index){
if(index == 2){
var $c4 = $('<div id="container4"><img id="img4" src="images/44.png"/></div>');
$c4.appendTo($("#wrapper"));
$("#img4").css("transform","scale(1,1)");
$("#wrapper").css("opacity","1");
}
},
onLeave: function(index,nextIndex,direction){
if(index == '1' || index == "3" && nextIndex == '2'){//刚一离开页面 就把上个页面的内容清除 只留背景图 然后页面全部出现再加载内容
$("#container4").remove();
$("#wrapper").css("opacity","0.4");
}
}
});
$("#img4").css("transform","scale(1,1)");
$("#img2").css("top","0px");
$("#img3").css("top","0px");
})

</script>
</head>
<body>
<div id="dowebok">
<div class="section">
<div class="slide"><h3>第一屏的第一屏</h3></div>
<div class="slide"><h3>第一屏的第二屏</h3></div>
<div class="slide"><h3>第一屏的第三屏</h3></div>
</div>
<div class="section active">
<div id="wrapper">
<div id="container4">
<img id="img4" src="images/44.png"/>
</div>
</div>
</div>
<div class="section">
<h3>第三屏</h3>
</div>
<div class="section">
<h3>第四屏</h3>
</div>
</div>
</body>
</html>

animation是可以实现的 transition出不来效果
...全文
540 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
woshidaniubi123 2015-09-07
  • 打赏
  • 举报
回复
解决结贴 写两个animation 然后用setTimeOut定时切换 完毕
woshidaniubi123 2015-09-07
  • 打赏
  • 举报
回复
用animation替代transition也不行啊 我需要transition的一个效果 然后再调用animation让他持续播放动画
前端动画素材在网页开发中扮演着重要角色,能够吸引用户注意、提升用户体验。以下是一些常见的前端动画素材的技术实现方式: CSS 动画:使用 CSS 属性(如@keyframes、transition、transform等)来实现动画效果。这种方式简单易用,适合实现简单的动画效果,如过渡、旋转、缩放等。 JavaScript 动画:通过 JavaScript 操作 DOM 元素的样式属性,实现更复杂、交互性更强的动画效果。常见的库包括 jQuery、Anime.js、GreenSock(GSAP)等,它们提供了丰富的动画函数和效果,使动画开发更加高效。 SVG 动画:使用 SVG(可缩放矢量图形)和 SMIL(同步多媒体集成语言)技术创建矢量图形动画,可以实现复杂的矢量图形动画效果,如路径动画、填充动画等。 Canvas 动画:通过 HTML5 Canvas 元素绘制图形,利用 JavaScript 控制绘制过程,实现高度可定制化的动画效果,适用于需要实时渲染的复杂动画场景。 WebGL 动画:基于 WebGL(Web图形库)的 3D 图形渲染技术,可以实现高性能的复杂动画效果,适合开发需要展示 3D 动画的网页。 React 动画库:如果你在使用 React 框架,可以考虑使用像 React Spring、Framer Motion 等专门为 React 设计的动画库,简化动画开发流程。 CSS 预处理器:使用像 Sass、Less 等 CSS 预处理器可以简化 CSS 编写过程,提高样式代码的可维护性,进而对动画效果实现有所帮助。 综上所述,前端动画素材的技术实现方式多种多样,开发者可以根据项目需求和个人技术偏好选择合适的方式来实现动画效果

61,115

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧