为什么webkit通知事件不会触发?

时间:2013-08-28 11:59:23

标签: javascript jquery ajax javascript-events webkit

我在我的网络应用上编写了一个webkit通知脚本,用于从数据库中提取通知。代码如下所示

    function checkNotifications() {
        if (window.webkitNotifications.checkPermission() == 1) {
            window.webkitNotifications.requestPermission();
        }
        else {
            $.ajax({
                type: "GET",
                dataType: 'json',
                url: '/check_notifications',
                success: function(data){

                    if (data){
                        var ticketId = data.ticket_id;
                        console.log(data);
                        var comment = data.comment;
                        var createdDate = data.created_at;
                        var notificationComment = data.comment;
                        var notificationId = data.notifcation_id;
                        var notification = window.webkitNotifications.createNotification('/pt_logo_small.png', 'Project Ticket '+ticketId+ ' Updated!', 'Ticket has been updated. Click here to see!');     
                        notification.show();
                        console.log(notificationId);

                        notification.onclick = function(){
                            this.close();
                            console.log("NOTIFICATION WAS CLICKED!")
                            $.ajax({
                                type: "GET",
                                dataType: 'json',
                                url: '/read_notifications/' + notificationId,
                                success: function(){
                                    window.location = '/pto/' + ticketId;
                                },
                                error: function(){
                                    window.location = '/pto/' + ticketId;
                                }
                            });

                            console.log(ticketId, comment, createdDate);
                        };
                    }

                }
            });
        }
        setTimeout(checkNotifications, 20000);
    }   

出于某种原因。我如果选择另一个选项卡,或者转到我的webapp中的另一个路径,脚本仍会运行以显示通知,但是.onclick事件永远不会触发。

任何人都知道为什么偶数不会触发?

根据Apple,onclick应该将创建事件的页面放在焦点上,这样做。但是我的.onclick函数中没有任何内容触发。

感谢所有人的帮助。

0 个答案:

没有答案