2013-08-24 60 views
3

我在哪里添加此弹出iframe的属性?我试图从一个jQuery的托管部分unblind点击,其中我有一个由shadowbox.js(插件java)触发的弹出式iframe。未捕获TypeError:无法读取未定义属性'Pop'

// social buttons 
    $('.book4b a').unbind('click').click(function() { 
     window.open($(this).attr('href'), '_new'); 
     return false;}); 
// Shadowbox popup 
$('.wr a').unbind('click').click(function() { 
    top.iframes['Pop'].location.href =window.open($(this).attr('href')); 
return false;}); 

错误我得到的是“遗漏的类型错误:无法读取的未定义的属性‘流行’”

太感谢你了!

+0

你有一个名为Pop的iframe吗? – adeneo

+0

@ adeneo是的,我这样做。这是由shadowbox触发的iframe。 150 * 400尺寸。谢谢 – Sam

回答

0

top.iframes未定义;请尝试使用top.frames

来自MDN,window.frames是属性(我相信)你正在寻找。并且由于top只是对父项window的引用,因此它应该具有frames属性。

+0

谢谢@Brad Christie它实际上并没有工作。错误保持:未捕获TypeError:无法读取未定义的属性'location' – Sam

+0

你意识到它返回该帧的contentWindow(而不是iframe DOM元素),因此设置'.location'可能不是你想要的。相反,你需要'document.getElementsByTagName('iframe')[0] .src ='...';'这将使iframe导航。 –

相关问题