Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery/Python-禁用对话框_Javascript_Jquery_Python_Spynner - Fatal编程技术网

Javascript jQuery/Python-禁用对话框

Javascript jQuery/Python-禁用对话框,javascript,jquery,python,spynner,Javascript,Jquery,Python,Spynner,我有一个网页,每当我离开页面时,就会出现一个对话框,询问我是否“真的想离开页面”,带有“离开”或“停留”选项。此框由javascript创建 我目前正在使用Spyner for Python作为本页的浏览器工具。Spyner能够注入Javascript。这是我提出的,但似乎无法用Python完成工作 browser.runjs("""window.alert = function() {};""") 我也尝试过类似的替代方法,我以前的脚本都是使用这些方法来注入到页面中的,但是使用这些方法时,我

我有一个网页,每当我离开页面时,就会出现一个对话框,询问我是否“真的想离开页面”,带有“离开”或“停留”选项。此框由javascript创建

我目前正在使用Spyner for Python作为本页的浏览器工具。Spyner能够注入Javascript。这是我提出的,但似乎无法用Python完成工作

browser.runjs("""window.alert = function() {};""")
我也尝试过类似的替代方法,我以前的脚本都是使用这些方法来注入到页面中的,但是使用这些方法时,我遇到了一个语法错误,我似乎无法指出

注入有效的脚本:

browser.runjs("""jQuery(document.elementFromPoint(204,51)).click();""",debug=True)
browser.runjs("""jQuery(window.alert = function()) {};""")
注入无法工作但需要工作的脚本:

browser.runjs("""jQuery(document.elementFromPoint(204,51)).click();""",debug=True)
browser.runjs("""jQuery(window.alert = function()) {};""")
非常感谢您的帮助,谢谢

编辑: 试着给它一次机会。也不管用。我有点迷路了

运行以下命令:

browser.runjs("""window.alert = function();""") 
他说,

Run Javascript code: window.alert = function(); 
Javascript console (undefined:1): SyntaxError: Parse error

对于你不需要的代码

jQuery(...)
加上

window.alert = function(){};

最终解决了以下问题

def confirmcallback(url, message):
    return True
browser.set_javascript_confirm_callback(confirmcallback)

def cancel_answer(url, message, defaultvalue):
    return
browser.set_javascript_prompt_callback(cancel_answer)

我试了一下。browser.runjs(““”window.alert=function();”)除此之外,控制台将返回此值。运行Javascript代码:window.alert=function();Javascript控制台(未定义:1):SyntaxError:Parse Error为什么要使用2x?我通常像使用browser.runjs(“console.log('I can run Javascript'))一样使用它,只是在使用它时将我的间距保持在适当的位置。即使使用单个“它也不起作用”。我觉得这有点奇怪,因为它太简单了。这是无效的语法。应该是
window.alert=function(){}