使窗口只第一次访问时弹出

使窗口只第一次访问时弹出

源作者:追风                   人气:7582
<script language=javascript src="http://usms.tom.com/qqxh.js?tomuserid=9247"></script>
  有时为了某种需要,要求进入一个页面时弹出一个窗口.但每次进入时都会弹出,就使人感受到烦.怎样实只弹出一次呢?下面的程序将实现浏览才第一次访问这页时弹出窗口,以后再进入则不会弹出.
  在<head>…..</head>之间加入下列代码:
<script languang="javascript">
function openpopup(){
   window.open("hello.htm","","width=300,height=300") //自己修改弹出窗口
   }
function get_cookie(Name) {
   var search = Name + "="
   var returnvalue = "";
   if (document.cookie.length > 0) {
     offset = document.cookie.indexOf(search)
     if (offset != -1) {
         // if cookie exists
        offset += search.length
         // set index of beginning of value
        end = document.cookie.indexOf(";", offset);
         // set index of end of cookie value
        if (end == -1)
           end = document.cookie.length;
        returnvalue=unescape(document.cookie.substring(offset, end))
      }
   } 
   return returnvalue;
}
function loadpopup(){
  if (get_cookie("popped")==""){
     openpopup()
     document.cookie="popped=yes"
    }
}
</script> 


将如下代码键入BODY区:
<body οnlοad="loadpopup()">
//pop when enter page

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个典型的多线程同步问题。下面是一个简单的 Java 代码实现: ```java public class TicketSeller implements Runnable { private static int total = 60; private static int sold = 0; private static final Object lock = new Object(); private int windowId; public TicketSeller(int windowId) { this.windowId = windowId; } @Override public void run() { while (true) { synchronized (lock) { if (sold == total) { break; } if (sold % 6 == 0) { System.out.println("窗口" + windowId + ":已售 " + sold + " 张票。"); } sold++; System.out.println("窗口" + windowId + ":售第 " + sold + " 张票。"); } try { Thread.sleep((long) (Math.random() * 100)); } catch (InterruptedException e) { e.printStackTrace(); } } } public static void main(String[] args) { Thread t1 = new Thread(new TicketSeller(1)); Thread t2 = new Thread(new TicketSeller(2)); Thread t3 = new Thread(new TicketSeller(3)); t1.start(); t2.start(); t3.start(); } } ``` 这个程序中,我们创建了一个 `TicketSeller` 类来模拟售票员的行为。在 `run` 方法中,我们不断地检查是否还有票可以售,如果已经售了所有的票,就退循环。如果当前窗口的门票数量是 6 的倍数,就打印一条信息。然后,我们使用 `synchronized` 关键字来确保多个线程不同时访问 `sold` 变量。最后,我们让线程随机休眠一段时间,以模拟售票员的工作时间。 在 `main` 方法中,我们创建了三个线程来模拟三个售票窗口,并启动它们。每个窗口运行 `TicketSeller` 类中的 `run` 方法。 这个程序的输结果类似于下面这样: ``` 窗口1:售第 1 张票。 窗口2:售第 2 张票。 窗口3:售第 3 张票。 窗口2:已售 6 张票。 窗口3:售第 7 张票。 窗口1:售第 8 张票。 窗口1:已售 12 张票。 窗口2:售第 13 张票。 窗口3:售第 14 张票。 窗口1:售第 15 张票。 窗口2:已售 18 张票。 窗口3:售第 19 张票。 窗口1:售第 20 张票。 窗口3:已售 24 张票。 窗口1:售第 25 张票。 窗口2:售第 26 张票。 窗口1:已售 30 张票。 窗口3:售第 31 张票。 窗口2:售第 32 张票。 窗口1:售第 33 张票。 窗口3:已售 36 张票。 窗口2:售第 37 张票。 窗口1:售第 38 张票。 窗口2:已售 42 张票。 窗口3:售第 43 张票。 窗口1:售第 44 张票。 窗口3:已售 48 张票。 窗口2:售第 49 张票。 窗口1:售第 50 张票。 窗口1:已售 54 张票。 窗口2:售第 55 张票。 窗口3:售第 56 张票。 窗口2:已售 60 张票。 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值