我打开了一个外部网址作为弹出窗口。
var myWindow = window.open("http://google.com/","MsgWindow","width=500,height=600");
现在,我需要检查用户是否点击了搜索按钮。
我尝试选择使用jquery选择器,如
myWindow.$('#gbqfba').onClick(function(){
alert('abc');
});
但是,它没有用。 :(你能帮帮我..
提前致谢。
答案 0 :(得分:1)
这只有在两个页面位于同一个域下时才有效。
当您在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')})
答案 1 :(得分:0)
为什么不能捕捉搜索按钮上的点击?
<button type="button" id="search">Search</button>
和你的jQuery
$("#search").click(function(){
var myWindow = window.open("http://google.com/","MsgWindow","width=500,height=600");
});
答案 2 :(得分:0)
我认为你不能使用javascript来检测在不同窗口中发生的事件。 您可以尝试,而不是使用window.open(),将页面(在您的情况下为google.com)加载到灯箱形式的灯箱或类似的js插件中。
即使你这样做,浏览器也不会让你点击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');
});