伙计们,我正在尝试在新窗口中打开一个 div,我尝试使用 window.open
,它按预期工作。
HTML:
<div id="pass">pass this to the new window</div>
<a href="#" onclick="openWin()">click</a>
JS:
function openWin() {
var divText = document.getElementById("pass").outerHTML;
var myWindow = window.open('', '', 'width=200,height=100');
var doc = myWindow.document;
doc.open();
doc.write(divText);
doc.close();
}
问题:如果窗口已经打开,当我再次单击按钮时,它不应该再次打开新窗口。 用户应该只能看到一个窗口。 就我而言,如果我单击按钮 10 次,就会打开 10 个窗口。
请大家帮我解决这个问题。
最佳答案
你可以这样做:
var popup;
function openWin() {
if (popup && !popup.closed) {
popup.focus();
/* or do something else, e.g. close the popup or alert a warning */
} else {
var divText = document.getElementById("pass").outerHTML;
popup = window.open('', '', 'width=200,height=100');
var doc = popup.document;
doc.open();
doc.write(divText);
doc.close();
}
}
这将检查弹出窗口是否打开,如果是,则将其聚焦。
<强> Demo
关于javascript - 在新窗口中打开一个 div - 单击按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56110567/