Ron*_*ton 3 material-design-lite
我想打开和关闭MDL吐司,而不是使用MDL使用指南中指出的timeout属性。原因是我希望在进行地理位置定位时保持吐司状态,这有时需要10秒钟以上,而其他时间则需要1秒。
任何想法如何做到这一点?
我找到一个问题解答,在sb对象上调用cleanup_方法。
使用此解决方案,我可以显示sb,单击动作处理程序将其隐藏,然后重新触发该动作以显示它而没有任何问题。
var snackbar = form.querySelector("[class*='snackbar']");
if (snackbar) {
var data = {
message: 'Wrong username or password',
timeout: 20000,
actionHandler: function(ev){
// snackbar.classList.remove("mdl-snackbar--active")
snackbar.MaterialSnackbar.cleanup_()
},
actionText: 'Ok'
};
snackbar.MaterialSnackbar.showSnackbar(data);
}
Run Code Online (Sandbox Code Playgroud)
由于cleanup_不是公共api的一部分,我认为值得用一些小检查将其括起来,以免造成灾难。
snackbar.MaterialSnackbar.cleanup_
&& snackbar.MaterialSnackbar.cleanup_()
!snackbar.MaterialSnackbar.cleanup_
&& snackbar.classList.remove("mdl-snackbar--active")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1825 次 |
| 最近记录: |