gpt4 book ai didi

html - 使用 "Always on top"打开新的浏览器窗口

转载 作者:行者123 更新时间:2023-12-03 17:32:06 26 4
gpt4 key购买 nike

我知道这不是一个好的做法 :-) 但我请求打开一个“始终在顶部”的新浏览器窗口。这是一个小的通知/统计窗口,而不是一个广告弹出窗口。

我尝试从主页打开一个新窗口:

<a href="okence.html"  
onclick="window.open('okence.html', 'newwindow', 'width=400,height=320'); return false;"
>Click</a>

新的 html 文件有:
<html>
<body>
<script type="text/javascript" language="javascript">
onblur = function() {
setTimeout('self.focus()', 100);
}
</script>

Test
</body>
</html>

新窗口打开,但没有“总是在最前面”。有没有其他办法?或者浏览器不允许这样做?

我尝试了一些建议(还有 set the focus of a popup window every time ),但没有一个有效。新(小)窗口被打开,但如果我点击外面的某个地方,它就消失了。我想要一个经典的“始终在顶部”功能,其中窗口停留在屏幕上。

最佳答案

你不能这样做。如果网站可以这样做,这是一个巨大的安全问题!欺诈网站可能会阻止访问者分散窗口的注意力。
想想看:
如果您的电子邮件程序每次收到新电子邮件时都会在您的脸上弹出一个弹出窗口怎么办?如果您不喜欢它,您将希望将其最小化或至少将其隐藏在其他窗口后面。问题是,如果你不能把它隐藏在另一个窗口后面怎么办?这会破坏用户体验。
相反,请尝试:

  • 闪烁标题栏(就像收到新环聊消息时的 Gmail:标题栏从“Gmail - 收件箱”闪烁到“<姓名> 说...”)。像这样:Finished Demo代码如下。确保在完成后单击 Hide Results 停止运行代码段以确保该代码段停止通过闪烁标题来耗尽您的 RAM。

  • setInterval(function() {
    var title = document.getElementById('title');
    if (title.innerHTML === "Original Title") {
    title.innerHTML = "New Notification!";
    } else {
    title.innerHTML = "Original Title";
    }
    },1000)
    <p id="title">Original Title</p>
    <small>Because Stack Snippets don't have &lt;title> support, I used a p element there. In real development, replace &lt;p> with &lt;title>.</small>

  • 在图标上添加一个红点,以便用户在浏览标签栏时可以看到有通知。代码:

  • setInterval(function() {
    var flash = document.getElementById('flash');
    if (flash.src == "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAgklEQVQ4Ed2RSw6AMAhEOYhLT+7p3HiGGjRTp0OxJrpyQeiH9yhqtqzlVaSwWTGOrFEQAOoBfqfnzUGvIAAiqYInMGRc+42AjegyymCOF2AzgvgezF8EPhtm4jllvU1zQVx/D0U3AkCaz+8HgedEoiDvrT4FIpeIiAFdR4GKSMgwGu91q05tY4o1SAAAAABJRU5ErkJggg==") {
    document.getElementById('flash').src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAdklEQVQ4Ed2RQQ6AMAgE+f8zfJ2/qME4zbqV1MSePDQU2FlKGrHt7dMp4YgWeqpBgwHQE5A9r98KT4IBMJNu8AbGTLVrDNSRKbMIc76AZAZpH+YvBrkbO+me1V21a76RSepMzaNr+gsQpsBF2SvrgB4BiN6/8gPOhlAtW0V8NgAAAABJRU5ErkJggg==";
    } else {
    flash.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAgklEQVQ4Ed2RSw6AMAhEOYhLT+7p3HiGGjRTp0OxJrpyQeiH9yhqtqzlVaSwWTGOrFEQAOoBfqfnzUGvIAAiqYInMGRc+42AjegyymCOF2AzgvgezF8EPhtm4jllvU1zQVx/D0U3AkCaz+8HgedEoiDvrT4FIpeIiAFdR4GKSMgwGu91q05tY4o1SAAAAABJRU5ErkJggg==";
    }
    },1000);
    <small>Once again, stack snippets does not support favicons. In real development, change img to link.</small>
    <img rel="icon" type="image/png" id="flash" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAgklEQVQ4Ed2RSw6AMAhEOYhLT+7p3HiGGjRTp0OxJrpyQeiH9yhqtqzlVaSwWTGOrFEQAOoBfqfnzUGvIAAiqYInMGRc+42AjegyymCOF2AzgvgezF8EPhtm4jllvU1zQVx/D0U3AkCaz+8HgedEoiDvrT4FIpeIiAFdR4GKSMgwGu91q05tY4o1SAAAAABJRU5ErkJggg==" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAgklEQVQ4Ed2RSw6AMAhEOYhLT+7p3HiGGjRTp0OxJrpyQeiH9yhqtqzlVaSwWTGOrFEQAOoBfqfnzUGvIAAiqYInMGRc+42AjegyymCOF2AzgvgezF8EPhtm4jllvU1zQVx/D0U3AkCaz+8HgedEoiDvrT4FIpeIiAFdR4GKSMgwGu91q05tY4o1SAAAAABJRU5ErkJggg==" />

    避免什么:
  • 收到新通知时播放巨大的声音
  • 试图强制用户激活(幸运的是,大多数浏览器都会阻止此操作)
  • 最后,打开一个弹出窗口。

  • 所以弹出窗口不是一个好主意。

    关于html - 使用 "Always on top"打开新的浏览器窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51923933/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com