小编Gµå*_*ïåñ的帖子

window.close和self.close不关闭Chrome中的窗口

问题是,当我调用window.close()self.close()它没有关闭窗口时.现在似乎有一种信念,即在Chrome中你无法通过脚本关闭任何非脚本创建的窗口.这显然是错误的,但无论它应该仍然这样做,即使它需要弹出警报确认.这些都没有发生.

那么,是否有人使用真实的,功能性的,经过验证的关闭窗口的方法,使用类似的东西javascript:window.close()或者javascript:self.close()实际上做了预期的东西以及在非Chrome浏览器的每个浏览器中都能正常运行的东西?任何建议将不胜感激,我正在寻找Javascript特定的解决方案,没有JQuery或第三方实现.

更新:虽然所提出的大部分内容存在严重的局限性和可用性问题,但// @grant window.close在脚本标题中使用的最新建议(特定于TamperMonkey)通常会在通常无法处理close方法的选项卡上执行此操作.虽然不完全理想,并没有针对每种情况推广,但在我的情况下,这是一个很好的解决方案.

javascript greasemonkey google-chrome tampermonkey

165
推荐指数
8
解决办法
50万
查看次数

PHP字符串连接和新行

我需要一些帮助来理解一些对我没有意义的PHP行为,感谢提前帮助.

首先,是否有使用\r\n\n\r?我认为逻辑上没有,但我认为必须有一个实际的原因,为什么它们单独列在PHP文档中.我目前正在使用,\r\n但有时我得到一个换行符,有时候我没有,它令人费解.

其次,我知道如果我在回显浏览器内部的信息,我会使用该nl2br()功能,但我没有向浏览器显示信息,它正在被收集并连接成一个字符串,然后通过该字符串发送mail(),这就是视觉差异正在显现.

这是剧本,非常直接,没有什么比这更令人难以置信的了:

<?php
    $browser = $_SERVER['HTTP_USER_AGENT'];
    $page = $_SERVER['PHP_SELF'];
    $ip = $_SERVER['REMOTE_ADDR'];
    $host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
    $from_page = $_SERVER['HTTP_REFERER'];
    $time = date('l, F jS Y - g:i:s A', $_SERVER['REQUEST_TIME']);
    $uri = $_SERVER['SCRIPT_URI'];

    $to = "***";
    $subject = "Visitor Log";
    $message = "IP Address : " . $ip . " ( HOST: " . $host . " )\r\n" . "Browser : " . $browser . "\r\n" . "From : " …
Run Code Online (Sandbox Code Playgroud)

php string

8
推荐指数
1
解决办法
8783
查看次数

VBScript用于检查用户的打开过程

我需要一个VBScript来检查特定用户是否正在使用某个进程:

代理点击程序图标 - > progcheck.vbs的批处理文件调用 - >

progcheck.vbs看起来只是在那个用户下运行"whatever.exe" - >

如果程序在该用户下运行,那么MsgBox"程序运行" - > wscript.quit(这需要终止批处理文件)

else - >返回批处理文件.

我已经在批处理文件中使用tasklist尝试了这个并且脚本可以工作,但是为域用户运行需要永远.想要在vbscript中这样做.

*** 带有MODS 10/12的更新的脚本 *****

OPTION EXPLICIT

    DIM strComputer,strProcess, strUserName,wshShell

    Set wshShell = WScript.CreateObject( "WScript.Shell" )
    strUserName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )

    strComputer = "." ' 
    strProcess = "notepad.exe"


    IF isProcessRunning(strComputer,strProcess,strUserName) THEN
            If MsgBox ("Notepad needs to be closed.", 1) = 1 then
                wscript.Quit(1)
            End If
    END IF

FUNCTION isProcessRunning(BYVAL strComputer,BYVAL strProcessName,BYVAL strUserName)

    DIM objWMIService, strWMIQuery

    strWMIQuery = "Select * from Win32_Process …
Run Code Online (Sandbox Code Playgroud)

vbscript wmi process batch-file

4
推荐指数
1
解决办法
8892
查看次数

false变量不会验证为false

我无法理解代码中的一些奇怪的行为,我想知道是否有人能告诉我我做错了什么?

我有一个布尔变量isWaiting,并将其保存为falselocalStorage,当它被检索到,它显示为false,但是当你做验证,它不这样认为.这是一个复制我的问题的小代码:

(function(){
    localStorage.setItem("isWaiting", false);
    var isWaiting = localStorage.getItem("isWaiting");
    console.log("isWaiting = " + isWaiting)
    console.log("Is isWaiting False? " + Boolean(isWaiting === false));
    // I have tried it as this as well
    console.log("Is isWaiting False? " + (isWaiting === false));
})()
Run Code Online (Sandbox Code Playgroud)

应得:

isWaiting = false

是假的吗?真正

生产:

isWaiting = false

是假的吗?false⬅ 这显然是错的,为什么会发生这种情况呢?

我究竟做错了什么?错误的布尔值是否会在某个localStorage过程中被破坏,如果是这样,我将如何解释它,如果没有,那么什么是错的?


解决方案更新:10/09/18

基于那种答复帮助我确认,确实我的怀疑是,LS过程屠宰值类型是正确的,更具体地@提供的解决方案bhojendra-rauniyar,我已经改变了代码,以纠正检索时刻的类型权然后在整个代码中正常处理它,避免添加大量代码,似乎已经完成了这个技巧,谢谢大家的帮助.

...
    var isWaiting = Boolean(JSON.parse(localStorage.getItem("isWaiting")));
...
Run Code Online (Sandbox Code Playgroud)

javascript logical-operators local-storage

2
推荐指数
1
解决办法
45
查看次数