Estou usando o framework CSS de bootstrap do Twitter (o que é fantástico). Para algumas mensagens aos usuários, estou exibindo-as usando os alertas Javascript JS e CSS.
Para os interessados, ele pode ser encontrado aqui: http://getbootstrap.com/javascript/#alerts
Meu problema é este; depois de exibir um alerta para um usuário, gostaria que ele desaparecesse após algum intervalo de tempo. Com base nos documentos do Twitter e no código que examinei, parece que não está incluído:
- Minha primeira pergunta é um pedido de confirmação de que isso NÃO está incluído no Bootstrap
- Em segundo lugar, como posso alcançar esse comportamento?
javascript
jquery
css
twitter-bootstrap
alert
Mario Zigliotto
fonte
fonte
Respostas:
Chamar
window.setTimeout(function, delay)
permitirá que você faça isso. Aqui está um exemplo que fecha automaticamente o alerta 2 segundos (ou 2.000 milissegundos) depois de ser exibido.Se você quiser envolvê-lo em uma função bacana, você pode fazer isso.
Então você pode usá-lo assim ...
Tenho certeza de que existem maneiras mais elegantes de fazer isso.
fonte
$('#myAlert').alert('close')
, não funciona como anunciado.$('#my_fancy_alert').createAutoClosingAlert(2000)
. Você só precisa passar$(this).remove()
ou$(this).alert('close')
emsetTimeout
retorno.Eu também não consegui fazer funcionar com o alerta. ('Fechar').
No entanto, estou usando isso e funciona muito bem! O alerta desaparecerá após 5 segundos e, uma vez removido, o conteúdo abaixo dele deslizará para sua posição natural.
fonte
.alert-message
? Tendo problemas, a classe no meu alerta BS3 éalert alert-danger alert-block
, então eu deveria usar.alert
,alert-danger
ou o nome completo da classe na função de tempo limite?$(".alert-message,.alert-danger,.alert-info")
e assim por diante. Você tem que descobrir se quer isso em todo o seu site ou não. Se você quiser em todas as páginas, por exemplo, na folha do Laravel você pode usar algo como @include ('scripts-alerts') ou @yield ('alerts'). Você tem que descobrir ou fazer uma pergunta específica no stackoverflow e não aqui ...Eu tive o mesmo problema ao tentar lidar com alertas popping e atenuá-los. Procurei em vários lugares e descobri que essa era a minha solução. Adicionar e remover a classe 'in' corrigiu meu problema.
Ao usar .remove () e, da mesma forma, a solução .alert ('close'), parecia que encontrei um problema com o alerta sendo removido do documento, portanto, se eu quisesse usar o mesmo alerta div novamente, não consegui. Esta solução significa que o alerta pode ser reutilizado sem atualizar a página. (Eu estava usando o aJax para enviar um formulário e apresentar feedback ao usuário)
fonte
Usar a ação 'fechar' no alerta não funciona para mim, porque ela remove o alerta do DOM e eu preciso do alerta várias vezes (estou postando dados com ajax e mostro uma mensagem para o usuário em cada postagem) . Por isso criei esta função que cria o alerta sempre que preciso e depois inicia um cronômetro para fechar o alerta criado. Passo para a função o id do container ao qual desejo anexar o alerta, o tipo de alerta ('sucesso', 'perigo', etc.) e a mensagem. Aqui está o meu código:
fonte
Esta é a versão do coffescript:
fonte
Com cada uma das soluções acima, continuei a perder a reutilização do alerta. Minha solução foi a seguinte:
No carregamento da página
Uma vez que o alerta precisava ser exibido
Observe que fadeTo define a opacidade como 0, então a exibição era nenhuma e a opacidade era 0, por isso removi da minha solução.
fonte
Depois de examinar algumas das respostas aqui e em outro tópico, aqui está o que eu terminei:
Criei uma função chamada
showAlert()
que adicionaria dinamicamente um alerta, com um opcionaltype
ecloseDealy
. Para que você possa, por exemplo, adicionar um alerta do tipodanger
(ou seja, alerta-perigo do Bootstrap) que fechará automaticamente após 5 segundos, assim:Para isso, adicione a seguinte função Javascript:
fonte
Eu precisava de uma solução muito simples para esconder algo depois de algum tempo e consegui fazer isso funcionar:
No angular, você pode fazer isso:
Aqui está a função que chamo quando o tempo limite é atingido
Portanto, agora meu diálogo / ui pode usar essas propriedades para ocultar elementos.
fonte
Com atraso e desvanecimento:
fonte
tente este
fonte