在 Rails 6 中使用 vanilla Javascript(将代码放入 中app/javascript/packs/application.js
),我使用以下内容淡化带有'.notification'
类的 flash 消息。
首先,notification
在您的 html 中添加一个类。然后,在 CSS 中,将.notification
opacity 设置为 1 并transition
设置为ease-in-out
. 然后,使用 JS,将.fade
类添加到.notification
,将不透明度设置为 0。
JS
window.addEventListener("turbolinks:load", () => {
hideNotice();
});
function hideNotice() {
const notification = document.querySelector('.notification')
if (notification) {
setInterval(function() {
notification.classList.add('fade');
}, 5000);
}
}
CSS
.notification {
opacity: 1;
transition: opacity 0.4s ease-in-out;
}
.notification.fade {
opacity: 0;
}