将 Flask 消息淡出扩展为多个消息
Extend Flask Messages fading out to multiple Messages
我的即显消息是使用非常标准的方法在页面上生成的:
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
{% for message in messages %}
{% set lvl = "alert-danger" if message[1]["result"] == False else "alert-info" %}
<div class="container"><div id="AMessage" class="alert {{ lvl }}" role="alert">{{ message[1]["content"] }}</div></div>
{% endfor %}
{% endif %}
{% endwith %}
如果只有一条消息,我会使用 jQuery:
淡出它
<script type="text/javascript">
window.setTimeout(function() {
$('#AMessage').fadeOut('slow');
}, 3000);
</script>
jQuery 部分如何处理多条消息?在我的方法中,只有一条消息淡出,其他消息保留。我想淡出所有消息。
在id="AMessage"的div中把"AMessage"放到class中,所以会是
class="alert {{ lvl }} AMessage"
然后在 JQuery 中替换它(将 '#' 替换为 '.')
$('.AMessage').fadeOut('slow');
我的即显消息是使用非常标准的方法在页面上生成的:
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
{% for message in messages %}
{% set lvl = "alert-danger" if message[1]["result"] == False else "alert-info" %}
<div class="container"><div id="AMessage" class="alert {{ lvl }}" role="alert">{{ message[1]["content"] }}</div></div>
{% endfor %}
{% endif %}
{% endwith %}
如果只有一条消息,我会使用 jQuery:
淡出它<script type="text/javascript">
window.setTimeout(function() {
$('#AMessage').fadeOut('slow');
}, 3000);
</script>
jQuery 部分如何处理多条消息?在我的方法中,只有一条消息淡出,其他消息保留。我想淡出所有消息。
在id="AMessage"的div中把"AMessage"放到class中,所以会是
class="alert {{ lvl }} AMessage"
然后在 JQuery 中替换它(将 '#' 替换为 '.')
$('.AMessage').fadeOut('slow');