请参阅以下JavaScript代码:
<script type="text/javascript">
function RequestPermission (callback) {
window.webkitNotifications.requestPermission(callback);
}
function getMonitor(title,msg) {
if (window.webkitNotifications.checkPermission() > 0) {
RequestPermission(getMonitor);
} else {
var popup = window.webkitNotifications.createNotification('',title,msg);
popup.show();
setTimeout(function(){popup.cancel();}, '10000');
}
}
</script>
在我打开此代码的新计算机中,出于某种原因他没有提醒权限,在我的第一台计算机上点击其他网站上的某个按钮并单击“允许”按钮时,所有警报都正常工作
任何建议?
答案 0 :(得分:-1)
由于只知道当用户授权时它返回零。
更改
window.webkitNotifications.checkPermission() > 0
到
window.webkitNotifications.checkPermission() != 0
然后试试。
修改强>
在工作了几个月之后,我意识到 window.webkitNotifications.checkPermission()只能用于从用户事件中调用,例如click / mousehover / gesture,它不能直接从JavaScript的。因此,在用户事件上调用 getMonitor 函数。阅读Chromium docs(有关详细信息,请参阅requestPermission部分)