我试图在点击时用一个旋转器替换文本链接。 我有这个:
$(document).on('page:fetch', function(e) {
$('.spinner').replaceWith( "<img src='<%= asset_path('layout/spinner.gif') %>'>" );
});
但很明显所有带有.spinner类的链接都会得到旋转器。我只想替换点击的链接,而且只有当它具有spinner类时才替换。
有什么建议吗?
我试图在点击时用一个旋转器替换文本链接。 我有这个:
$(document).on('page:fetch', function(e) {
$('.spinner').replaceWith( "<img src='<%= asset_path('layout/spinner.gif') %>'>" );
});
但很明显所有带有.spinner类的链接都会得到旋转器。我只想替换点击的链接,而且只有当它具有spinner类时才替换。
有什么建议吗?
您需要编写一些代码,它将在'page:load'和ready事件上触发,以便它们能够适用于完整页面加载和Turbolinks页面加载。下面的代码将在被点击的'.spinner'上添加一个值为true的'data-click'属性。
#inside both the ready and 'page:load' events
$('.spinner').on('click', function(e) {
$(this).attr('data-clicked', true);
});
$(document).on('page:fetch', function(e) {
$('.spinner[data-clicked="true"]').replaceWith( "<img src='<%= asset_path('layout/spinner.gif') %>'>" );
});
如果这有帮助,请告诉我。
$('.spinner').on("click", function() {
$(this).replaceWith( "<img src='<%= asset_path('layout/spinner.gif') %>'>" );
});