Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.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在弹出窗口中捕获事件?_Javascript_Jquery_Event Handling - Fatal编程技术网

如何使用javascript在弹出窗口中捕获事件?

如何使用javascript在弹出窗口中捕获事件?,javascript,jquery,event-handling,Javascript,Jquery,Event Handling,我已经打开了一个外部url作为弹出窗口 var myWindow = window.open("http://google.com/","MsgWindow","width=500,height=600"); 现在,我需要检查用户是否单击了搜索按钮 我尝试使用jquery选择器进行选择,如 myWindow.$('#gbqfba').onClick(function(){ alert('abc'); }); 但是,它不起作用)你能帮我吗 提前谢谢。为什么你不能点击搜索按钮 <

我已经打开了一个外部url作为弹出窗口

var myWindow = window.open("http://google.com/","MsgWindow","width=500,height=600");
现在,我需要检查用户是否单击了搜索按钮

我尝试使用jquery选择器进行选择,如

myWindow.$('#gbqfba').onClick(function(){
     alert('abc');
});
但是,它不起作用)你能帮我吗


提前谢谢。

为什么你不能点击搜索按钮

<button type="button" id="search">Search</button>

我认为您不能使用javascript来检测在不同窗口中发生的事件。 您可以尝试,而不是使用window.open(),以lightbox或类似js插件的形式将页面(在您的例子中是google.com)加载到iframe

即使您这样做,浏览器也不允许您点击iframe中的内容。您无法准确检测用户单击的内容,但您可以在用户使用此脚本触发单击事件后发现

$('window').click( function(e){
    console.log('User Clicked outside the iframe');
});

$('window').blur( function(e){
    console.log('User clicked on the iframe or outside the page');
});​

这仅在两个页面位于同一域下时才有效

这将在您访问stackoverflow.com时在您的控制台上工作:

var myWindow = window.open("http://stackoverflow.com/","MsgWindow", "width=500","height=600");
$(myWindow).on('click', 'a', function() {alert('a')})
这不会:

var myWindow = window.open("http://google.com/","MsgWindow", "width=500","height=600");
$(myWindow).on('click', 'a', function() {alert('a')})

那么您正试图在google上的搜索按钮上附加警报?如果用户单击搜索按钮,我需要触发警报。仅此而已。try:$('#gbqfba”)。on(“click”,function(){alert(“abc”)});
var myWindow = window.open("http://google.com/","MsgWindow", "width=500","height=600");
$(myWindow).on('click', 'a', function() {alert('a')})