你好,
我已经检查了问题PushPad: Subscribe is removed after site refresh的答案,但没有帮助我。
我在doc之后创建了一个订阅/取消订阅按钮,每次单击订阅按钮时,提示都会显示在Firefox上,所以我猜我的流程是正确的,但是我不明白为什么无法在Chrome上运行=>提示仅显示我首次启动Chrome的时间。
这是我的工作
pushpad('init', #projectID);
var pushId = $("#main").data("pushid");
var pushSig = $("#main").data("pushsig");
var updateButton = function (isSubscribed) {
var btn = $('#activate-push-notif');
if (isSubscribed) {
btn.html('Unsubscribe');
btn.addClass('subscribed');
} else {
btn.html('Subscribe');
btn.removeClass('subscribed');
}
};
// check whether the user is subscribed to the push notifications and
// initialize the button status (e.g. display Subscribe or Unsubscribe)
pushpad('status', updateButton);
// when the user clicks the button...
$('#activate-push-notif').on('click', function (e) {
e.preventDefault();
// if he wants to unsubscribe
if ($(this).hasClass('subscribed')) {
pushpad('unsubscribe', function () {
updateButton(false);
}, {
uid: pushId,
});
// if he wants to subscribe
} else {
// try to subscribe the user to push notifications
pushpad('subscribe', function (isSubscribed) {
if (isSubscribed) {
updateButton(true);
} else {
updateButton(false);
alert('You have blocked notifications from your browser preferences.');
}
}, {
uid: pushId,
uidSignature: pushSig
});
}
});
感谢您的帮助。
答案 0 :(得分:0)
$(function () { ... }
中,以便在页面完全加载后运行代码,否则您的点击处理程序可能无法正常工作。