我希望能够为每个通知设置链接/永久链接,因此当用户点击它时;然后他被带到永久链接位置,
我见过this answer有一个有点不同的解决方案因为使用了静态链接,
我想以某种方式:
var noti = window.webkitNotifications.createNotification(
'http://funcook.com/img/favicon.png',
'HTML5 Notification',
'HTML5 Notification content...',
'http://mycustom.dynamic.link.com/' /* invented code */
)
noti.onclose = function(){ alert(':(') };
noti.onclick = function(){
window.location.href = $(this).url; /* invented code */
};
noti.show();
有机会吗? (我真的不喜欢静态html文件解决方案......我想保留这种语法)
答案 0 :(得分:9)
这样的事情怎么样?
var createNotificationWithLink = function(image, title, content, link) {
var notification = window.webkitNotifications.createNotification(image, title, content);
notification.onclose = function() {
alert(':(');
};
notification.onclick = function() {
window.location.href = link;
};
return notification;
};
现在,只要您想创建通知,就可以致电createNotificationWithLink
:
var noti = createNotificationWithLink(
'http://funcook.com/img/favicon.png',
'HTML5 Notification',
'HTML5 Notification content...',
'http://mycustom.dynamic.link.com/'
);
noti.show();
如果您愿意(noti.show();
),也可以将createNotificationWithLink
移动到notification.show();
功能中。我不知道您是否希望在创建通知时自动显示通知...
答案 1 :(得分:3)
您可以在select * from Employee
where company_id in (select id from Company where leisureGroup_id = 123);
事件处理程序中将data
属性作为onclick
传递给您。
e.target.data
答案 2 :(得分:2)
noti.onclick = function() {
window.open("http://www.stackoverflow.com")
};
有关如何使用window.open的更多信息:http://www.w3schools.com/jsref/met_win_open.asp4
HTML5通知资源:http://www.html5rocks.com/en/tutorials/notifications/quick/(如果这不能回答您的问题)
对于每一个你都可以拥有:
var noti1 = window.webkitNotifications.createNotification(
'http://funcook.com/img/favicon.png',
'HTML5 Notification',
'HTML5 Notification content...',
var noti2 = window.webkitNotifications.createNotification(
'http://funcook.com/img/favicon.png',
'HTML5 Notification #2',
'HTML5 Notification #2 content...',
等
然后
noti1.onclick = function() {
window.open("http://www.stackoverflow.com")
};
noti2.onclick = function() {
window.open("http://www.example.com")
};
希望有所帮助:)
答案 3 :(得分:0)
您可以将网址作为属性添加到'noti',然后使用this.yourpropertyname
示例:
noti.myurl = 'http://stackoverflow.com';
...
noti.onclick = function(){
window.location.href = this.myurl;
};
希望这会有所帮助。
答案 4 :(得分:0)
对于需要打开新浏览器窗口(标签)但不希望替换父窗口(标签)并集中显示的任何人,在单击通知后,此代码段将技巧:
var notification = new window.Notification("Hello!", {
body: "Hello world!",
data: "https://www.google.com/"
});
notification.onclick = function(event) {
event.preventDefault(); //prevent the browser from focusing the Notification's tab, while it stays also open
var new_window = window.open('','_blank'); //open empty window(tab)
new_window.location = event.target.data; //set url of newly created window(tab) and focus
};