Rumah  >  Artikel  >  hujung hadapan web  >  Penggunaan window.location.href (lompat keluaran dinamik)_Pengetahuan asas

Penggunaan window.location.href (lompat keluaran dinamik)_Pengetahuan asas

WBOY
WBOYasal
2016-05-16 16:40:011859semak imbas

location.href dalam JavaScript mempunyai banyak kegunaan, terutamanya seperti berikut.

self.location.href="/url" Halaman semasa membuka halaman URL
location.href="/url" Halaman semasa membuka halaman URL
windows.location.href="/url" Halaman semasa membuka halaman URL Tiga penggunaan pertama adalah sama.
this.location.href="/url" Halaman semasa membuka halaman URL
parent.location.href="/url" Buka halaman baharu pada halaman induk
top.location.href="/url" Buka halaman baharu pada halaman teratas

Jika bingkai disesuaikan pada halaman, anda boleh menggantikan bahagian atas diri ibu bapa dengan nama bingkai tersuai Kesannya ialah membuka alamat url dalam tetingkap bingkai

Selain itu, window.location.href=window.location.href; dan window.location.Reload() kedua-duanya memuat semula halaman semasa. Perbezaannya terletak pada sama ada data diserahkan. Apabila data diserahkan, window.location.Reload() akan menggesa sama ada untuk menyerahkannya window.location.href=window.location.href akan menyerahkan data ke url
yang ditentukan

Apabila menulis program ASP.Net, kami sering menghadapi masalah melompat halaman Kami sering menggunakan Response.Redirect untuk melompat ke halaman bingkai ASP.NET Jika pelanggan ingin menggunakan gesaan semasa melompat, ini tidak bekerja lagi, seperti:

Salin kod Kod adalah seperti berikut:

Response.Write("< script>alert('Tahniah, pendaftaran anda berjaya!');< /script>"); Response.Redirect("main.html");

Pada masa ini, kandungan segera kami akan melompat sebelum ia keluar, yang tidak berbeza daripada Response.Redirect("main.html");.

Pada masa ini kami menggunakan kod berikut untuk mengujinya:

Satu lagi pelaksanaan lompat halaman rangka kerja ASP.NET

Salin kod Kod adalah seperti berikut:
Response.Write("< script language=javascript>alert('Tahniah, pendaftaran anda berjaya!')< /script>"); Response.Write("< script language=javascript>window.location.href='main.html'< /script>");


Ini memenuhi keperluan kami Selepas gesaan, halaman akan melompat.
Perkara yang paling penting ialah pernyataan window.location.href dapat menyedari bahawa halaman satu bingkai menyegarkan halaman bingkai lain selepas melaksanakan kod sisi pelayan (Response.Redirect tidak dapat mencapai ini, sekurang-kurangnya saya tidak melakukannya menjumpainya):

Contohnya: terdapat dua bingkai dalam halaman index.htm, iaitu frameLeft dan frameRight Selepas melaksanakan kod sisi pelayan dalam halaman frameRight, muat semula halaman dalam frameLeft.

Perkara yang paling biasa sebelum ini ialah memuat semula kotak log masuk secara automatik selepas pendaftaran, supaya kotak log masuk digantikan dengan halaman log masuk Selagi anda menambah perenggan selepas kod pendaftaran yang berjaya, anda boleh memuat semula halaman daripada bingkai lain. Kodnya adalah seperti berikut:

Salin kod Kod adalah seperti berikut: Response.Write("< script language=javascript>alert('Tahniah, pendaftaran anda berjaya!')< /script>"); Response.Write("< script language=javascript>window.parent.frameLeft.location.href='main.html'< /script>");

Ini menyelesaikan masalah gangguan lompat halaman bingkai ASP.NET. Sebenarnya, kaedah ini biasanya digunakan dalam asp dan php.

"window.location.href", "location.href" ialah lompatan ke halaman ini "parent.location.href" ialah lonjakan halaman ke tahap sebelumnya

"top.location.href" ialah lompatan halaman paling luar

Contoh:

Jika A, B, C dan D semuanya jsp, D ialah iframe C, C ialah iframe B, dan B ialah iframe A, jika js dalam D ditulis seperti ini

"window.location.href", "location.href": D lompat halaman

"parent.location.href": Lompat halaman C

"top.location.href": Lonjakan halaman

Jika terdapat borang di muka surat D,


: Halaman D melompat selepas borang diserahkan

: Halaman baharu muncul selepas borang diserahkan

: Halaman C melompat selepas borang diserahkan

: Halaman A melompat selepas borang diserahkan

Mengenai penyegaran halaman, halaman D menyatakan:

"parent.location.reload();": C page refresh (sudah tentu, anda juga boleh menggunakan objek pembuka tetingkap anak untuk mendapatkan objek tetingkap induk: window.opener.document.location.reload (); )

"top.location.reload();": Muat semula halaman

Kenyataan:
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