加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 每个站点的所有打开的选项卡只有一次浏览器通知

发布时间:2020-12-15 21:00:01 所属栏目:百科 来源:网络整理
导读:我有一个由C#ASP.Net MVC 5.0提供支持的新闻站点,我想在管理员添加/编辑或删除新闻时将通知推送到客户端浏览器. 所以我在我的模板中添加了一个信号器脚本,用于所有页面. _Layout.cshtml var notificationsHub = $.connection.notificationHub;$.connection.h
我有一个由C#ASP.Net MVC 5.0提供支持的新闻站点,我想在管理员添加/编辑或删除新闻时将通知推送到客户端浏览器.
所以我在我的模板中添加了一个信号器脚本,用于所有页面.

_Layout.cshtml

var notificationsHub = $.connection.notificationHub;
$.connection.hub.start();
jQuery(function($) {
    notificationsHub.client.Toast = function (title,body) {
        var options = {
            body: body,};
        var notification = new Notification(title,options);
    };
});

并将此代码添加到新闻添加/编辑/删除完成后重定向的页面

<script>
    $.connection.hub.start().done(function() {
        notificationsHub.server.toast('@NotificationHub.Type.ToString()','@Html.Raw(NotificationHub.Title)','@Html.Raw(NotificationHub.Body)');
    });
</script>

当我添加/编辑/删除新闻时,它工作正常,但问题是它将通知推送到我的网站中所有打开的标签.有没有一个技巧可以避免这种情况发生,并且每个站点只显示一个浏览器通知?

解决方法

然后,您必须知道打开的选项卡的数量和使用的URL.请参阅“ How to get the number of tabs opened of my web in a browser using jquery?”SO问题,以了解出于隐私原因而不需要这样做的讨论.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读