在我的 Rails 应用程序中,我有它,因此当您对列表进行投票、订阅或取消订阅时,它将使用 pnotify 显示一个弹出窗口。
这工作正常,直到用户导航到不同的页面,现在它不再工作。这仅在页面加载或重新加载时有效。
我知道这是因为 rails 4 应用程序中的 turbolinks 但它似乎执行了除 pnotify 之外的所有其他 javascript 代码。
附加信息..
订阅/取消订阅和投票按钮具有方法 post 并远程执行,这意味着我有一个单独的文件名 subscribe.js.erb、unsubscribe.js.erb 和 vote.js.erb 来处理 JavaScript 代码的执行。用户点击了按钮。
这是我如何创建新的 pnotify 对象的示例:
new PNotify({
title: "Subscribed!",
text: "<%= @message %>",
type: 'info',
opacity: .8,
animation: {
effect_in: 'show',
effect_out: 'slide'
},
buttons: {
sticker: false
}
}).get().click(function() {
$(this).remove();
});
我也在使用一个名为 gem 的 gem 进行 pnotify'pnotify-rails'