javascript-FadeOut不再显示错误警报
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-FadeOut不再显示错误警报,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1097字,纯文字阅读大概需要2分钟。
内容图文
![javascript-FadeOut不再显示错误警报](/upload/InfoBanner/zyjiaocheng/662/d097b54a588744f4aae37f74dc6005fe.jpg)
我使用以下HTML代码:
<div style="width:235px; " id="ErrorAlert" ng-hide="ErrorAlert">
<alert type="danger">User's email is duplicated!</alert>
</div>
设置警报超时的JS是
$scope.ErrorAlert = false;
setTimeout(function () {
$('#ErrorAlert').fadeOut('slow');
}, 2000); //2 second
问题是,时间过去之后,警报消失了,如果再次调用该警报,它将不会出现.可能是因为设置了超时并且它已经过期.
即使上一个事件已经超时,如何使警报重新出现.
解决方法:
您的错误是ng-hide将使用一个类(class =“ ng-hide”)隐藏您的元素,而jQuery.fadeOut()将编写一个带display的内联样式属性:none.
您的浏览器将始终优先考虑内联样式,因此Angular将删除此类,但由于内联样式,对象将保持隐藏状态.
当您设置$scope.ErrorAlert = true;还可以使用jQuery删除内联样式或调用.show()方法.
一种解决方案:
$scope.ErrorAlert = false;
setTimeout(function () {
$('#ErrorAlert').fadeOut('slow', function () {
$scope.ErrorAlert = true;
// $('#ErrorAlert').show();
$('#ErrorAlert').removeAttr('styles');
});
}, 2000); //2 second
可能代替$(‘#ErrorAlert’).show();尝试使用$(‘#ErrorAlert’).removeAttr(‘styles’)…,因为您的对象可能不会隐藏,因为他具有display:block;内联和ng-hide类隐藏…:D
内容总结
以上是互联网集市为您收集整理的javascript-FadeOut不再显示错误警报全部内容,希望文章能够帮你解决javascript-FadeOut不再显示错误警报所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。