Function window.open menutup semua kemahiran windows_javascript kanak-kanak

WBOY
Lepaskan: 2016-05-16 15:47:33
asal
1613 orang telah melayarinya

Artikel ini memperkenalkan cara menggunakan kaedah window.open untuk membuka sub-tetingkap Apabila kita menutup tetingkap utama, semua sub-tingkap juga akan ditutup. Di bawah ialah idea dan kod pelaksanaan saya untuk dikongsi dengan anda.

Idea pelaksanaan:
1. Parameter kedua winName bagi tetingkap fungsi tetingkap anak terbuka.open(url,winName) boleh mengenal pasti tetingkap terbuka secara unik. Oleh itu, anda hanya perlu menggunakan fungsi winName.close() untuk menutup tetingkap anak.
2. Halaman mungkin mempunyai berbilang sub-tingkap. Oleh itu, tatasusunan diperlukan untuk menyimpan semua objek tetingkap kanak-kanak. Apabila ditutup, hanya lelaran melalui tatasusunan.
3. Sub-tetingkap juga boleh membuka sub-tetingkap. Gelung berterusan selama-lamanya. Oleh itu keperluan untuk penghakiman.
Keperluan ini boleh dicapai dalam dua cara.

Panggil fungsi penutupan tetingkap kanak-kanak.
Kaedah ini mudah difahami, tetapi semasa proses pelaksanaan sebenar, didapati acara penutupan pelayar tidak berlaku. Dan ia perlu ditutup dengan mengklik butang atau menggunakan kekunci pintasan Lebih menyusahkan untuk menutup sub-tingkap secara rekursif
Kaedah ini mudah untuk dilaksanakan. Kelemahannya ialah semua tatasusunan objek tetingkap yang menyimpan sub-tingkap perlu mempunyai nama yang sama

Berikut ialah kaedah sub-tingkap yang menggunakan rekursi untuk menutup sub-tingkap dan sub-tingkap

function closeSonWindow(win){
  for(var index=0;index<win.length;index++){
    //如果窗口已关闭
    if(win[index].closed){
      continue;
    }
    //如果窗口没有可以打开的子窗口
    if(typeof(win[index].openedWindow)=="undefined"){
      win[index].close();
      continue;
    }
    if(win[index].openedWindow.length==0){
      win[index].close();
    }else{
      closeSonWindow(win[index].openedWindow);
      win[index].close();
    }
  }
}
Salin selepas log masuk

Di atas adalah huraian keseluruhan artikel ini, saya harap ia akan membantu semua orang.

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan