Javascript 显示警报在一天中的设定时间向页面发出警报

Javascript 显示警报在一天中的设定时间向页面发出警报,javascript,jquery,twitter-bootstrap,alert,toast,Javascript,Jquery,Twitter Bootstrap,Alert,Toast,是否可以将警报消息设置为在页面上的特定时间显示?i、 e上午8:10如果用户在页面/EventStart.html 站点标题中的 var info = document.getElementById("info"); info.addEventListener("click", ()=>{ cuteAlert({ type: "info", brand: "linktree",

是否可以将警报消息设置为在页面上的特定时间显示?i、 e上午8:10如果用户在页面
/EventStart.html

站点标题中的

var info = document.getElementById("info");
info.addEventListener("click", ()=>{
  cuteAlert({
      type: "info",
      brand: "linktree",
      title: "Link Test",
      message: "Hello World",
      buttonText: "Okay"
  })
})
JS文件

function cuteAlert({
  type,
  title,
  message,
  buttonText = "OK",
  confirmText = "OK",
  cancelText = "Cancel",
  closeStyle,
}) {
  return new Promise((resolve) => {
    setInterval(() => {}, 5000);
    const body = document.querySelector("body");

    const scripts = document.getElementsByTagName("script");
    let currScript = "";

    for (let script of scripts) {
      if (script.src.includes("cute-alert.js")) {
        currScript = script;
      }
    }

    let src = currScript.src;

    src = src.substring(0, src.lastIndexOf("/"));

    let closeStyleTemplate = "alert-close";
    if (closeStyle === "circle") {
      closeStyleTemplate = "alert-close-circle";
    }

    let btnTemplate = `
    <button class="alert-button ${type}-bg ${type}-btn">${buttonText}</button>
    `;
    if (type === "question") {
      btnTemplate = `
      <div class="question-buttons">
        <button class="confirm-button ${type}-bg ${type}-btn">${confirmText}</button>
        <button class="cancel-button error-bg error-btn">${cancelText}</button>
      </div>
      `;
    }

    const template = `
    <div class="alert-wrapper">
      <div class="alert-frame">
        <!-- <div class="alert-header ${type}-bg"> -->
        <div class="alert-header">
          <span class="${closeStyleTemplate}">X</span>
          <img class="alert-img" src="${brand}.png" />
        </div>
        <div class="alert-body">
          <span class="alert-title">${title}</span>
          <span class="alert-message">${message}</span>
          ${btnTemplate}
        </div>
      </div>
    </div>
    `;

    body.insertAdjacentHTML("afterend", template);

    const alertWrapper = document.querySelector(".alert-wrapper");
    const alertFrame = document.querySelector(".alert-frame");
    const alertClose = document.querySelector(`.${closeStyleTemplate}`);

    if (type === "question") {
      const confirmButton = document.querySelector(".confirm-button");
      const cancelButton = document.querySelector(".cancel-button");

      confirmButton.addEventListener("click", () => {
        alertWrapper.remove();
        resolve("confirm");
      });

      cancelButton.addEventListener("click", () => {
        alertWrapper.remove();
        resolve();
      });
    } else {
      const alertButton = document.querySelector(".alert-button");

      alertButton.addEventListener("click", () => {
        alertWrapper.remove();
        resolve();
      });
    }

    alertClose.addEventListener("click", () => {
      alertWrapper.remove();
      resolve();
    });

    alertWrapper.addEventListener("click", () => {
      alertWrapper.remove();
      resolve();
    });

    alertFrame.addEventListener("click", (e) => {
      e.stopPropagation();
    });
  });
}
函数cuteAlert({
类型,
标题
消息
buttonText=“确定”,
confirmText=“确定”,
cancelText=“取消”,
封闭式,
}) {
返回新承诺((解决)=>{
setInterval(()=>{},5000);
const body=document.querySelector(“body”);
const scripts=document.getElementsByTagName(“脚本”);
让currScript=“”;
for(让脚本中的脚本){
if(script.src.includes(“cute alert.js”)){
currScript=脚本;
}
}
设src=currScript.src;
src=src.substring(0,src.lastIndexOf(“/”);
让closeStyleTemplate=“警报关闭”;
如果(闭合样式==“圆形”){
closeStyleTemplate=“警报关闭循环”;
}
让btn示例=`
${buttonText}
`;
如果(类型=“问题”){
btnTemplate=`
${confirmText}
${cancelText}
`;
}
常量模板=`
X
${title}
${message}
${btnTemplate}
`;
body.insertAdjacentHTML(“afterend”,模板);
const alertWrapper=document.querySelector(“.alert wrapper”);
const alertFrame=document.querySelector(“.alertFrame”);
const alertClose=document.querySelector(`.${closeStyleTemplate}`);
如果(类型=“问题”){
const confirButton=document.querySelector(“.confirm按钮”);
const cancelButton=document.querySelector(“.cancel button”);
confirButton.addEventListener(“单击”,()=>{
alertWrapper.remove();
决议(“确认”);
});
cancelButton.addEventListener(“单击”,()=>{
alertWrapper.remove();
解决();
});
}否则{
const alertButton=document.querySelector(“.alert button”);
alertButton.addEventListener(“单击”,()=>{
alertWrapper.remove();
解决();
});
}
alertClose.addEventListener(“单击”,()=>{
alertWrapper.remove();
解决();
});
alertWrapper.addEventListener(“单击”,()=>{
alertWrapper.remove();
解决();
});
alertFrame.addEventListener(“单击”,(e)=>{
e、 停止传播();
});
});
}

使用窗口计时器可以采取几种方法。你试过什么?谢谢,这很有效。我需要从我的原始代码中删除addEventLister(“单击…”),但总的来说,这是一个很好的起点。
const time = date.parse('10 June 2021 00:12:00 GMT') - Date.now();

if (time > 0) {
   setInterval(()=>{
      //your code here
   }, time )
}