是否有看到有的网站进入网站就会弹出网站公告提示框,今天飞飞和你们分享打开网站就弹出网站公告提示框的JS弹窗代码,希望可以帮到你~
<script language="javascript">alert('我是飞飞,可以通过【服务器大本营】相识是一种缘分,希望通过我的分享可以让你更多的了解服务器,当然有服务器需求的朋友可以加微信:137 5120 9102~域名速记:【服务器大本营】首拼.com')</script>
直接复制JS代码,粘贴到首页文件,或者需要弹出的页面即可
.背景:
即时通讯、桌面端app开发、当用户和用户聊天,当发送聊天消息时,须要作收到消息通知,因为用到的技术栈是electron、它也有自己的通知模块、因为其他的原因暂时用不了 最后查到HTML5新增的 Notification API的通知功能。即便将浏览器窗口最小化,依然会收到消息通知、所以就先用它吧、后面再后话处理一下。
2.通知权限:
2.1 首先须要 看浏览器是否支持 Notification ,支持才有下文,不然就此止步;
2.2 经过 Notification.permission 检测用户是否容许通知:
// Notification.permission==='granted' 用户容许
// Notification.permission==='denied' 用户拒绝
// Notification.permission==='denied' 不知道用户的选择,默认
if(Notification.permission==='granted'){
console.log('用户容许通知');
instance_init(title, options);
}else if(Notification.permission==='denied'){
console.log('用户拒绝通知');
}else{
console.log('用户还没选择,去向用户申请权限吧');
Notification.requestPermission(function(status) {
if(status=='granted'){
console.log('用户容许通知');
instance_init(title, options);
}else if(status=='denied'){
console.log('用户拒绝通知');
}else{
console.log('用户还没选择');
}
});
}
3. 主要用到的参数。其他参数了解:notification - Web API 接口参考 | MDNMDN Web DocsMDN logoMozilla logo
title:通知的标题
options:通知的设置选项(可选)。
body:通知的内容。
tag:表明通知的一个识别标签,相同tag时只会打开同一个通知窗口。
icon:要在通知中显示的图标的URL。
image:要在通知中显示的图像的URL。
data:想要和通知关联的任务类型的数据。
requireInteraction:通知保持有效不自动关闭,默认为false。
4.代码实现
4.1原生html5方式
<html>
<head>
<meta charset="UTF-8">
<title>H5通知功能 </title>
</head>
<body>
<script type="text/javascript">
// 调用通知方法
showMsgNotification('状态更新提醒','你的朋友圈有3条新状态,快去查看吧');
/**
* H5通知功能
*/
function showMsgNotification(out_title, out_msg) {
var title=out_title ? out_title : '更新状态标题';
var options={
body: out_msg ? out_msg : "更新状态内容", // 通知主体
requireInteraction: true, // 不自动关闭通知
icon: 'http://img18.house365.com/newcms/2017/03/16/148964317858ca26aacf7b5.jpg', // 通知图标
tag: 'hangge',
};
var Notification=window.Notification || window.mozNotification || window.webkitNotification; // 浏览器作兼容处理
if(Notification) { //支持桌面通知
if(Notification.permission=="granted") { //已经容许通知
instance_init(title, options);
} else {
//第一次询问或已经禁止通知(若是用户以前已经禁止显示通知,那么浏览器不会再次询问用户的意见,Notification.requestPermission()方法无效)
Notification.requestPermission(function(status) {
if(status==="granted") { //用户容许
instance_init(title, options);
} else { //用户禁止
console.log('禁止')
return false
}
});
}
/**
* Notification定义
* */
function instance_init(title, options){
var instance=new Notification(title, options);
instance.onclick=function() {
console.log('onclick');
// 关闭通知
instance.close();
};
instance.onerror=function() {
console.log('onerror');
};
instance.onshow=function() {
console.log('onshow');
};
instance.onclose=function() {
console.log('onclose');
};
}
} else { //不支持(IE等)
console.log("不支持的浏览器")
}
}
</script>
</body>
</html>
4.2 electron方式、调用即可
ySQL 在预览版中引入了 Javascript 支持。
Oracle 最近宣布 MySQL 数据库服务器现在支持 JavaScript 函数和过程。用于存储例程的 JavaScript 目前处于预览状态,并且仅在 MySQL Enterprise Edition 和 MySQL Heatwave 中可用。
JavaScript 支持的引入使开发人员能够在数据库中实现高级数据处理逻辑。通过最大限度地减少数据库服务器和客户端应用程序之间的数据移动,存储函数和过程可以减少延迟、网络开销和出口成本。Oracle 高级首席软件工程师?ystein Gr?vlen和技术人员顾问成员Farhan Tauheed写道:
对JavaScript存储程序的支持,不仅可以利用庞大的生态系统来提高开发人员的生产力;现在,更多的开发人员将具备编写存储程序所需的技能。换句话说,组织现在可以利用广泛可用的 JavaScript 技能集进行后端开发,从而挖掘更广泛的开发人才。
在新功能的常见用例中,Oracle 重点介绍了数据提取、数据格式化、近似搜索、数据验证、压缩、编码和数据转换。该公告提供了一个将 JavaScript 代码直接嵌入到 SQL 定义中的函数示例,受到社区的好评:
CREATE FUNCTION gcd_js (a INT, b INT) RETURNS INT
LANGUAGE JAVASCRIPT AS $$
let [x, y]=[Math.abs(a), Math.abs(b)];
while(y) [x, y]=[y, x % y];
return x;
$$;
当使用传统的 CALL 语句调用函数时,SQL 类型和 JavaScript 类型之间会发生隐式类型转换。根据文档,JavaScript 支持基于 ECMAScript 2021 标准,并且支持整数、浮点和CHAR/VARCHAR类型的所有变体。Gr?vlen 和 Tauheed 补充道:
MySQL-JavaScript 集成针对其特定用例使用定制的 VM,以实现最佳的端到端性能。这种定制基于 GraalVM 的提前 (AOT) 编译,其中语言实现被编译为本机二进制表示形式以进行快速处理。GraalVM 有自己的基于 ECMAScript 2021 标准的 JavaScript 实现。尽管它是使用 GraalVM 的 Polyglot 框架实现的,但该语言实现在性能方面具有竞争力。
GraalVM运行时包括 JDK、语言实现( JavaScript、R、Python、Ruby 和 Java)以及具有沙箱功能和工具支持的托管虚拟机。虽然 MySQL-JavaScript 在 OCI、AWS 和 Azure 上的 MySQL 企业版和 MySQL Heatwave 云服务中可用,但 MySQL 社区版不支持。
MySQL 并不是第一个在存储例程中支持 Javascript 的开源关系数据库,PLV8是 PostgreSQL 最流行的 Javascript 语言扩展。PLV8 受 PostgreSQL 的所有当前版本支持,包括Amazon RDS等托管服务,并且可用于存储例程和触发器。
Oracle 在 YouTube 上发布了三个 MySQL HeatWave 视频,演示如何运行 Mustache 库、验证 Web 表单输入或使用 JavaScript 中存储的程序处理 Web URL。
*请认真填写需求信息,我们会在24小时内与您取得联系。