[英]Close Popup Before Opening Popup
我正在嘗試改進我在將近 15 年前使用免費“互聯網代碼”構建的舊日歷頁面。 當七列六行日歷顯示時,將鼠標光標移動到顯示的任何一天上會顯示“更多信息”鏈接,單擊該鏈接會彈出一個新窗口。 有效的JS代碼:
<script type="text/javascript">
// Popup window code
function newPopup(url,striing) {
popupWindow = window.open(url,striing)
}
</script>
url 看起來像 '2022-11-27.html' 'striing' 通過點擊鏈接傳遞,看起來像:
'MyWindow','height=70,width=600, left=90,top=90,resizable=yes,menubar=no,scrollbars=yes, toolbar=no,menubar=no, location=no,directories=no,status =否');
每個日期鏈接指向一個單獨的 HTML 文件,該文件將出現在彈出窗口中,並且“高度”是單獨設置的,以便彈出窗口將包含 html 頁面的整個文本,沒有滾動條或多余的空白。 發生的情況是,如果用戶未使用鼠標手動關閉“MyWindow”,則下一次調用日期信息將在同一窗口中打開。 如果已經打開的“MyWindow”設置為一小段文本,新的 html 文件將忽略“height=400”參數並加載到現在太短的需要滾動條的窗口中。 如果已經打開的“我的窗口”被設置為高而新的 html 文件很短,它將在底部留下帶有漂亮空白的高窗口。 我非常想做其中一件事情——按偏好順序顯示——
阿黛萬
我試過
<script type="text/javascript">
// Popup window code
function newPopup(url,striing) {
popupWindow = window.close('MyWindow');
window.open(url,'MyWindow',striing)
}
</script>
但它甚至看起來都沒有嘗試工作。
window.close
不接受窗口名稱作為參數。
相反,將新打開的窗口存儲在一個變量中。 然后,在創建新窗口時,關閉與該變量關聯的窗口,然后重新分配它。
let prevPopup;
function newPopup(url, string) {
prevPopup?.close();
prevPopup = window.open(url,'MyWindow',string)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.