opener
opener用于在window.open的页面引用执行该window.open方法的的页面的对象。例如:A页面通过window.open()方法弹出了B页面,在B页面中就可以通过opener来引用A页面,这样就可以通过这个对象来对A页面进行操作。
parent
parent用于在iframe,frame中生成的子页面中访问父页面的对象。例如:A页面中有一个iframe或frame,那么iframe或frame中的页面就可以通过parent对象来引用A页面中的对象。这样就可以获取或返回值到A页面中。
parent指父窗口,在FRAMESET中,FRAME的PARENT就是FRAMESET窗口。 opener指用WINDOW.OPEN等方式创建的新窗口对应的原窗口。 两者肯定不一样。
parent是相对于框架来说父窗口对象 opener是针对于用window.open打开的窗口来说的父窗口,前提是window.open打开的才有。
参考资料: js中parent和opener的区别 http://www.studyofnet.com/news/262.html