我需要在我的应用程序中具有闪烁功能。基本上,我正在创建一个计算器,我需要像“|”这样的东西 用户从按钮输入每个数字后闪烁。对于 Firefox 和 Opera,类似:
var str = "Hello world!";
document.write(str.blink());
这正是我想要的。我的问题是它们在 Chrome、IE 或 safari 中不起作用。如果我希望我的应用程序在跨浏览器上运行,是否有任何简单的替代方法或者我必须自己创建闪烁功能?
我需要在我的应用程序中具有闪烁功能。基本上,我正在创建一个计算器,我需要像“|”这样的东西 用户从按钮输入每个数字后闪烁。对于 Firefox 和 Opera,类似:
var str = "Hello world!";
document.write(str.blink());
这正是我想要的。我的问题是它们在 Chrome、IE 或 safari 中不起作用。如果我希望我的应用程序在跨浏览器上运行,是否有任何简单的替代方法或者我必须自己创建闪烁功能?
你可以只使用 css3 :
@keyframes 'blink' {
0% { background: rgba(255,0,0,0.5); }
50% { background: rgba(255,0,0,0); }
100% { background: rgba(255,0,0,0.5); }
}
如果你真的想要跨浏览器的兼容性,你应该使用一个库,例如 jQuery。
这是一个很好的小脚本,可以完成你想要的 - http://www.silverphp.com/simple-jquery-blink-script-alternative-to-html-blink-tag.html
另一方面,如果你更喜欢 vanilla JS,你可能必须自己实现它。也许setInterval()
与使元素消失的功能一起使用?
试试这个-:解决方案 NO 1
您可以创建自己的自定义闪烁功能。这也可以通过创建 css 类并将它们添加到我们的元素来完成。
function blink()
{
setInterval(function () {
document.getElementById("blink").style.webkitTransitionDuration = "0.7s";
document.getElementById("blink").style.opacity = 0;
setTimeout(function () {
document.getElementById("blink").style.webkitTransitionDuration = "0.7s";
document.getElementById("blink").style.opacity = 1;
}, 700);
},1400);
}
或者
试试这个-->解决方案 NO.2
JAVASCRIPT
function blink()
{
document.getElementById('blink').className = "animated blink_css";
}
在 CSS 中
.animated {
-webkit-animation-fill-mode:both;
-moz-animation-fill-mode:both;
-ms-animation-fill-mode:both;
-o-animation-fill-mode:both;
animation-fill-mode:both;
-webkit-animation-duration:1s;
-moz-animation-duration:1s;
-ms-animation-duration:1s;
-o-animation-duration:1s;
animation-duration:1s;
}
@keyframes 'blink' {
0% { background: rgba(255,0,0,0.5); }
50% { background: rgba(255,0,0,0); }
100% { background: rgba(255,0,0,0.5);
}
//try moz for mozilla,o for opera and webkit for safari and chrome
.blink_css {
-webkit-animation-name: blink;
-moz-animation-name: blink;
-o-animation-name: blink;
animation-name: blink;
}
他们两个都可以工作。经过测试!!!