javascript,HTML5模拟视频游戏HUD效果
javascript, html5 simulate video game HUD effect
我正在尝试在HTML5中模拟视频游戏HUD。我有一个带有 CSS 样式的div,使其看起来像游戏叠加层,当单击导航链接时,我需要div 从显示:none 状态,然后非常快速地闪烁两次,然后淡入。
此外,当单击div 中的关闭按钮时,应该会发生同样的情况,只是末尾的淡入淡出从 100% 反转为 0%。
我必须对其他导航链接和不同的div 做同样的事情。如果我能让一个人工作,我也应该能够让其他人工作。
所以div的透明度是这样的:
被点击前的关闭状态 0%
点击
时打开 100%关闭 0%
在 100%
关闭 0%
然后
淡入淡出超过 1.5 秒 0% 至 100%
导航链接:
<li><a href="#target" id="about">About</a></li>
分:
<div id="overlay">
<a href="#" class="btn" id="close">X</a>
<h3>Overlay</h3>
Fusce commodo congue ante, quis venenatis nibh blandit ut. Aenean felis est, dictum eget venenatis ac,vestibulum vel urna. Quisque felis metus, vehicula et semper quis, fermentum a dolor.
</div>
我试过这个,但没有产生预期的效果。
$("#target").click(function() {
//alert("Handler for .click() called.");
// set interval
var timeCount=0;
setInterval(function() {
if(timeCount == 1){
//alert("timeCount"+ timeCount);
$('#overlay').toggle();
}
if(timeCount == 2){
//alert("timeCount"+ timeCount);
$('#overlay').toggle();
}
if(timeCount == 3){
//alert("timeCount"+ timeCount);
$("#overlay").fadeIn("slow");
}
if(timeCount == 4){
//abortTimer();
}
timeCount++;
}, 50);
});
对于 setInterval 速度,低于 50 的任何值都太快,无法呈现开/关切换。我只是看到淡入。
任何超过 60 的东西都太慢了。
当前间隔仅闪烁一次显示,因为您将其打开,然后再次关闭一次。你应该有这样的东西:
if( timeCount < 4) $("#overlay").toggle();
else {
$("#overlay").fadeIn("slow");
clearInterval(timer);
}
此外,即使有两次闪光,闪光灯也只能持续20秒。显示器刷新率为每秒 60 次,因此即使浏览器是实时的,它也只会显示三帧。我不了解你,但对我来说,这似乎真的很快。我会让它显示大约 10 帧(间隔为 100),隐藏 10 帧,再次显示,再次隐藏,然后淡入淡出。这将使闪烁持续大约半秒钟,这仍然很快,但至少是可见的。你目前的做法,就像你试图引起癫痫发作......
相关文章:
- 为effect Composer创建GodRays效果过程
- 单击顶部导航时如何进行向下滚动效果(向下滑动).
- jQuery工具验证器自定义效果-添加&消除影响
- 在不移动内部文本的情况下缩放元素的效果
- 为图像提供灯箱效果
- 带有计数器、缩略图、进度条和淡入淡出效果的简单jQuery幻灯片
- 键控效果,如果在效果完成之前键控,则发出警报
- 如何通过按键激活按钮应用CSS效果
- AngularJS和promise值在调用本地函数时的效果-未定义
- 在这个幻灯片中没有淡出效果JavaScript,CSS和HTML
- 如何在服务、技能、投资组合等方面添加滑动效果
- 如何在JavaScript中创建打字机效果,这将考虑html标记规则
- 为什么不在浏览器上获得JQuery效果呢
- 如何在剑道UI中创建类转换效果
- 具有淡入淡出效果的全背景图像
- 滚动固定滚动顶部()的跳跃效果
- 嵌套承诺会产生类似的效果
- 使用香草JavaScript的脉冲效果
- PHP&CSS:如何获得表中每一行的悬停效果
- javascript,HTML5模拟视频游戏HUD效果