如何从window.open在jQuery数据中使用

如何从window.open在jQuery数据中使用,jquery,browser,Jquery,Browser,如何从window.open在jQuery数据中使用 w = window.open("http://google.com", 'test_window', 'left=20,top=20,width=500,height=500,toolbar=1,resizable=1'); browser = w.document; // execute commands in browser $(browser).ready(funct

如何从window.open在jQuery数据中使用

  w = window.open("http://google.com",
            'test_window',
            'left=20,top=20,width=500,height=500,toolbar=1,resizable=1');
  browser = w.document;  
  // execute commands in browser
  $(browser).ready(function(){
    alert($('input', browser).attr('name'));
  });
  // close browser
  w.close();
在这个示例中,我想打开新的弹出窗口,加载Google页面,并获取关于加载的页面元素名称的信息


我试图这样做,但没有找到解决办法。请帮帮我。

我相信您需要在iFrame中打开它


或者创建一个嵌入了iframe的新窗口,然后可以使用jQuery查询外部内容的dom。

这称为跨站点脚本XSS。您的页面,即somedomain.com正在执行一个脚本,该脚本试图从另一个加载了不同域google.com的窗口读取数据。现代浏览器将防止这种情况,因为这是一个安全问题

想象一下,如果您在一个窗口中打开了一个受损站点,而在另一个窗口中打开了您的银行站点。使用XSS,攻击者可以从受损站点嗅出您的银行信息


要做到这一点,唯一的方法是在客户端禁用XSS过滤器——这不是一个好主意,或者安装一个应用程序来完成您试图用javascript完成的任务。但是,根据您要完成的工作,Google API可能会提供您所需的访问,而无需所有这些工作。

请告诉我们您要做什么。也许有更好的解决办法。如果你想在你的网站上使用谷歌搜索工具,有一个API。Google search API

我认为这不会起作用,因为您仍然会执行一个访问外部DOM的脚本。如果他创建了自己的页面,例如//his-domain.com/Google.html,并在该页面上,将Google加载到iframe中,他就可以从Google.html操作DOM。