我的JavaScript弹出窗口有问题。我有两个窗口弹出功能:
弹出的第一个窗口将打开一个包含页面URL的新窗口
看起来像:
<a class="" onclick="kmt_contactFormPopup('http://uk.support.tomtom.com/app/ask',this)">[To the contact form..]</a>
function kmt_contactFormPopup(emailURL, aTag)
{
params = 'width=950px';
params +=',height=700';
params += 'screenX=250, screenY=80,';
params +='scrollbars=yes';
newwindow=window.open(emailURL,'name',params);
if (newwindow.focus) {newwindow.focus()}
}
弹出的第二个窗口将抓取此HTML页面中的内容并在弹出窗口中显示内容。
例如;
Collect the error log <a href="#BOX01" onclick="kmt_ShowBoxPopup('BOX01', this);"><strong>[Show me how..]</strong></a><br /><br />
<div id="BOX01" style="display:none">
<table cellspacing="0" cellpadding="0" border="0" style="background-color:#ffffff;">
</tr>
</table>
</div>
javascript
function kmt_ShowBoxPopup(targetDivID, aTag)
{
var orgin_div_content=document.getElementById(targetDivID).innerHTML;
showBoxPopupWin =window.open("",'name','height=400,width=710,screenX=250,screenY=80, scrollbars=yes');
showBoxPopupWin.document.write (orgin_div_content);
if (window.focus) {showBoxPopupWin.focus()}
}
如果我先运行contactForm弹出功能,然后单击showBox功能。我在JavaScript中收到了一条错误消息:
从中获取属性Window.document的权限被拒绝 第43行
是这行代码
showBoxPopupWin.document.write (orgin_div_content);
我想有不同的弹出窗口。
答案 0 :(得分:1)
showBoxPopupWin =window.open("",'name', ...
如果名为'name'
的窗口已打开,则不会在窗口中打开新的空白可写文档。它将保留旧文档,作为外部链接,您无法写入。
您必须打开一个具有不同名称的窗口(通常为_blank
,以防止任何窗口名称冲突)。
(还考虑给出局部变量var
以避免意外的全局冲突,并使用href
的正确链接而不是仅使用JS的虚假链接。)