国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

用javascript實(shí)現(xiàn)始終保持打開同一個(gè)子窗口以及關(guān)閉父窗口同時(shí)自動(dòng)關(guān)閉所有子窗口

2019-11-21 02:03:23
字體:
供稿:網(wǎng)友
今天在網(wǎng)上看到這篇文章,感覺很少會(huì)用到,但畢竟還是有些人需要這樣的功能的,否則就不會(huì)有這篇文章,這篇文章主要是解決以下問題:
復(fù)制代碼 代碼如下:

1.點(diǎn)擊一個(gè)可以打開新窗體的鏈接,如何實(shí)現(xiàn)如果窗體已打開,則將焦點(diǎn)轉(zhuǎn)到已打開的窗體,否則打開新窗體。難點(diǎn):如何判斷窗體已打開,及將將打開的窗體Active?  
2.如何實(shí)現(xiàn)一個(gè)主窗體關(guān)閉時(shí),將所有 打開的其他相關(guān)窗體一起關(guān)閉?  
實(shí)現(xiàn)要點(diǎn): 
1. window.open 會(huì)返回新打開窗口的 window 對(duì)象。 
2. 實(shí)現(xiàn)一個(gè)模擬的簡單 HashMap 存儲(chǔ)子窗口的 window 對(duì)象。 
3. 每次 open 的時(shí)候,檢索此 HashMap,確定子窗口是否已存在。 
4. 若存在則直接切換焦點(diǎn) (window.focus) 。
5. 若不存在,則 open 一個(gè)。 
6. 對(duì)于4,有可能子窗口已關(guān)閉,故采取了點(diǎn)技巧,先調(diào)用其 focus (其實(shí)可以任意方法),若出錯(cuò),則也open 一個(gè)。
7. 關(guān)閉parent 的時(shí)候,遍歷 HashMap,嘗試關(guān)閉所有子窗口。 
8. 所有操作在父窗口實(shí)現(xiàn)。 
9. 整個(gè)實(shí)現(xiàn)原理其實(shí)很簡單,只要需要熟悉js和dhtml,然后注意細(xì)節(jié)問題處理。 

目前 IE 6 sp1 測(cè)試通過,F(xiàn)F 由于不支持 window.focus 故不適合使用。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執(zhí)行]

打包文件下載
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 绥棱县| 黄浦区| 青铜峡市| 禄丰县| 同仁县| 手游| 宁武县| 平阳县| 潜江市| 东乡县| 南丹县| 襄汾县| 巴林左旗| 屏东市| 株洲县| 汉寿县| 尖扎县| 镇坪县| 永寿县| 望谟县| 竹北市| 德阳市| 霍城县| 荣昌县| 衢州市| 澄城县| 安化县| 错那县| 长宁县| 盘锦市| 阳春市| 吉林市| 营山县| 罗甸县| 广水市| 康定县| 淳安县| 奉贤区| 辉南县| 衡阳市| 滨州市|