Javascript Jquery在加载页面时获取桌面通知
我使用此代码通过单击div在chrome上获得桌面通知Javascript Jquery在加载页面时获取桌面通知,javascript,jquery,html,google-chrome,notifications,Javascript,Jquery,Html,Google Chrome,Notifications,我使用此代码通过单击div在chrome上获得桌面通知 <script> function notify() { var havePermission = window.webkitNotifications.checkPermission(); if (havePermission == 0) { // 0 is PERMISSION_ALLOWED var notification = window.webkitNotifications.createNotificat
<script>
function notify() {
var havePermission = window.webkitNotifications.checkPermission();
if (havePermission == 0) {
// 0 is PERMISSION_ALLOWED
var notification = window.webkitNotifications.createNotification(
'http://i.stack.imgur.com/dmHl0.png',
'Chrome notification!',
'Here is the notification text'
);
notification.onclick = function () {
window.open("http://stackoverflow.com/a/13328397/1269037");
notification.close();
}
notification.show();
} else {
window.webkitNotifications.requestPermission();
}
}
</script>
<div style="width: 300px; height: 300px; background: yellow" onclick="notify()">
Cick here to notify
</div>
函数notify(){
var havePermission=window.webkitNotifications.checkPermission();
if(havePermission==0){
//是否允许0权限\u
var notification=window.webkitNotifications.createNotification(
'http://i.stack.imgur.com/dmHl0.png',
“Chrome通知!”,
'这是通知文本'
);
notification.onclick=函数(){
窗口打开(“http://stackoverflow.com/a/13328397/1269037");
通知。关闭();
}
notification.show();
}否则{
window.webkitNotifications.requestPermission();
}
}
Cick在此通知
但是当我将onclick
更改为onload
不工作时
我在这段代码中也使用jquery,甚至使用单击事件或就绪
这有什么问题吗?我找到了答案
我用这个
<script type="text/javascript">
var DesktopNotifications = {
/**
* Checks if notifications are supported
* @return {Boolean}
*/
isSupported:function() {
return (window.webkitNotifications != 'undefined')
},
/**
* ask use to display desktop notifications
* @param callback
*/
requestPermission:function(callbck) {
window.webkitNotifications.requestPermission(function() {
if (typeof(callbck) == "function") {
callbck(window.webkitNotifications.checkPermission() == 0);
}
});
},
/**
* display a notification
* @param img full path of image to be displayed e.g. http://somedomain.com/photo.jpg
* @param notitification_title title of notification
* @param notification_body body of nitification
* @return {Boolean}
*/
doNotify:function(img,notitification_title,notification_body) {
// permission is ok
if (window.webkitNotifications.checkPermission() == 0) {
window.webkitNotifications.createNotification(img, notitification_title, notification_body).show();
return true;
}
return false;
}
}
$(document).ready(function() {
// request permission to display notifications
$("#permission_request").click(function() {
DesktopNotifications.requestPermission();
});
// craete notification
$("#create_notification").ready(function() {
if (!DesktopNotifications.doNotify("https://twimg0- a.akamaihd.net/profile_images/2647445933/2c75afbe419bc7aaae71f01b29062b84_normal.jpeg",
"Desktop Notification Example",
"This is description of out Hello World notification example.")) {
alert('Unable to fire notifications. Click "Request Permission" button to allow jaspreetchahal.org/examples access to send notifications to your desktop. Please note that this is just a demo and you can block this access anytime later');
}
});
});
</script>
var DesktopNotifications={
/**
*检查是否支持通知
*@return{Boolean}
*/
isSupported:函数(){
返回(window.webkitNotifications!=“未定义”)
},
/**
*要求使用以显示桌面通知
*@param回调
*/
requestPermission:函数(callbck){
window.webkitNotifications.requestPermission(函数(){
if(typeof(callbck)=“函数”){
callbck(window.webkitNotifications.checkPermission()==0);
}
});
},
/**
*显示通知
*@param img待显示图像的完整路径,例如。http://somedomain.com/photo.jpg
*@param notitification_通知标题
*@param通知\u初始化主体
*@return{Boolean}
*/
doNotify:功能(img、通知标题、通知正文){
//允许就可以了
if(window.webkitNotifications.checkPermission()==0){
window.webkitNotifications.createNotification(img,notitification\u title,notification\u body).show();
返回true;
}
返回false;
}
}
$(文档).ready(函数(){
//请求显示通知的权限
$(“#权限请求”)。单击(函数(){
DesktopNotifications.requestPermission();
});
//克雷特通知
$(“#创建#通知”).ready(函数(){
如果(!DesktopNotifications.doNotify(“https://twimg0- a、 akamaihd.net/profile_images/2647445933/2c75afbe419bc7aaae71f01b29062b84_normal.jpeg“,
“桌面通知示例”,
“这是对out Hello World通知示例的描述。”){
警报('无法触发通知。单击“请求权限”按钮以允许jaspreetchahal.org/examples访问向您的桌面发送通知。请注意,这只是一个演示,您可以随时阻止此访问');
}
});
});
及
工作对我来说很好
<a href="#requestnotifications" id="permission_request">Request permission</a>
<a href="#createnotification" id="create_notification">Send</a>