请问下,js如何判断用户正在关闭计算机。给他一百分!

解决方案 »

  1.   

    下面方法可以,在需要判断的时候用就行了function computerClose(){
      if(confirm("大哥请问下您即将要关电脑了吗?")){
         alert("电脑即将关闭")
      }else{
         alert("电脑还不关")
      }
    }
      

  2.   

    测试通过,给分吧
    <head>
    <title>标题页</title>
    <script language=javascript>
     function computeClose()
     {
        if(confirm("大哥,请问电脑要关了吗?")){
          alert("即将关机")
        }else{
          alert("还没关机")
        }
     }
    </script>
    </head>
    <body >
       <input type=button value="关机测试" onclick=computeClose() />
    </body>
    </html>
      

  3.   

    有个办法,尽量写个最糟糕的JS代码,弄个死循环,吃尽PC的内存,卡死浏览器,不给用户关网页,关1个开它100个。卡死他。他受不了了,最好只能关机,目的达到,OK解决
      

  4.   

    可以这样考虑:
    1,首先编写一个控件,其中含有对window运行和是否关闭状态的判断函数,并注册到机子上,
    2,在WEB中可以通过JS建立该控件的实例,通过调用是否关闭机子的函数来判断,看是否是关机.
      

  5.   

    通过WMI跟踪 Win32_ComputerShutdownEvent以下用cscript执行Set oWMIServices = GetObject("winmgmts:{impersonationLevel=impersonate}!root\cimv2") 
    Set oEventSource = oWMIServices.ExecNotificationQuery("SELECT * FROM Win32_ComputerShutdownEvent") 
    wscript.echo "等待..." 
    Do
      Set oNextEvent = oEventSource.NextEvent 
      If oNextEvent.Type=0 Then
         Wscript.echo "注销" 
      Else
         Wscript.echo "关机重启"
      End If
    Loop
      

  6.   

    改成js版本的
    以下存为xx.js, 命令运行 cscript xx.js 
    关机时可捕捉到当前是操作是注销还是关机或重启
    var oWMIServices = GetObject("winmgmts:{impersonationLevel=impersonate}!root\\cimv2");
    var oEventSource = oWMIServices.ExecNotificationQuery("SELECT * FROM Win32_ComputerShutdownEvent");
    WScript.Echo("等待..."); 
    while(1){
      var oNextEvent = oEventSource.NextEvent();
      if(oNextEvent.Type==0){
         WScript.Echo("注销"); 
      }else{
         WScript.Echo("关机重启");
      }
    }
      

  7.   

    本地机上,写段JS陪自己玩玩不难实现。但用到网站上,让客户端运行这样的脚本难度太大了,只能通过Hack手段提升权限到管理员组,否则这个世界真就乱套了