我在下面有一些 jQuery:
$(function () {
$('.mnav a').click(function () {
el = $('.border');
el.addClass('blink');
el.one('webkitAnimationEnd oanimationend msAnimationEnd animationend',
function (e) {
el.removeClass('blink');
});
});
});
它将一个类添加到一个动画元素,然后在动画运行后删除该类,因此每次我单击该元素动画的链接。
该动画在我的 layouts.ejs 的 <%- body %> 标记中的元素上运行。当我从“/”路线转到“/users/new”路线时,我认为动画发生在“/”路线上,但我没有看到它,因为我将在“/users/new”路线上。
我想要的效果是,当用户点击登录链接时,效果会在转到新路线时发生。
有办法解决这个问题吗?
最佳答案
您必须在所有当前元素和 future 元素上绑定(bind)点击事件:
$(function () {
$('body').on("click",".mnav a",function () {
el = $('.border');
el.addClass('blink');
el.one('webkitAnimationEnd oanimationend msAnimationEnd animationend',
function (e) {
el.removeClass('blink');
});
});
});
关于javascript - 在从一个节点路由转换到另一个节点路由时执行 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33109048/