Saya sedang mengerjakan proyek ujian di mana siswa akan mengklik opsi yang akan membuka dua tab dengan studi kasus yang berbeda dan menutup tab sebelumnya tetapi saya tidak memiliki pengalaman dengan Javascript dan saya tidak yakin bagaimana mendekati masalahnya.

Itu dibangun di Wordpress dan saya sudah mencoba menggunakan berbagai plugin tetapi semuanya gagal. Saya telah berhasil mendapatkan tautan untuk dibuka di tab baru (tidak berbeda dengan tetapi tidak menutup yang sebelumnya atau membuka dua tab dengan masing-masing halaman web.

Kami menggunakan tag jangkar saat ini di HTML dan menempatkan javascript sebaris, tetapi saya pikir kami mungkin perlu mengatasinya secara berbeda, berpotensi dengan memanggil file javascript.

Kami ingin menggunakan Javascript karena memungkinkan kami menambahkan kode untuk melacak pengguna ketika mereka mengklik tautan.

Tata letak halaman sangat dasar dengan satu tautan di atasnya (memiliki kode pelacakan konversi tampilan halaman untuk melacak jumlah siswa yang mengikuti ujian) sehingga sangat kecil kemungkinan skrip akan bertentangan dengan hal lain, inilah mengapa tab sebelumnya harus ditutup secara otomatis untuk menghindari gangguan

<a href="http://www.example.com" onclick="window.open('https://www.example.com');return false">Example</a>

Ini membuka halaman web di tab baru tetapi saya tidak yakin bagaimana membuatnya membuka dua tab baru (URL berbeda) dan menutup tab sebelumnya.

(Saya melihat ada pertanyaan serupa yang diajukan tetapi tidak ada alamat yang menutup tab sebelumnya)

2
Andrew Hill 27 Mei 2019, 23:54

2 jawaban

Jawaban Terbaik

Jika Anda ingin melakukan ketiga tindakan tersebut secara bersamaan, Anda mungkin ingin membuat fungsi yang melakukan ketiganya, lalu memanggil fungsi tersebut dengan acara onclick.

<a href="http://www.example.com" onclick="myFunction()">

Kemudian Anda akan mendefinisikan fungsi dalam file JS dan menautkannya ke html Anda. Sesuatu seperti ini:

<script src="myscripts.js"></script>

File JS (dalam contoh ini) akan diberi nama myscripts.js dan akan terlihat seperti ini:

function myFunction(){
  window.open('url1.com');
  window.open('url2.com');
  window.close()
}

Sayangnya, Anda tidak dapat menutup jendela menggunakan Window.close() jika jendela itu tidak dibuka oleh skrip, jadi itu adalah masalah lain. Tanpa informasi lebih lanjut tentang bagaimana pengguna sampai ke halaman ini, saya tidak bisa menyarankan solusi.

0
Jorrin Bruns 27 Mei 2019, 21:30

Untuk membuka beberapa halaman sekaligus Anda dapat menggunakan kode berikut.

window.open('url1.com');
window.open('url2.com');

Cara membuat tautan membuka banyak halaman saat diklik

Untuk menutup tab/jendela saat ini gunakan

window.close();

Bagaimana cara menutup tab saat ini di jendela browser?

Untuk melakukan semua 3 tindakan dalam eventhandler inline seperti kode contoh Anda, Anda dapat memanggil window.open dua kali dengan url yang berbeda, window.close(), dan kemudian mengembalikan false.

0
JasonB 27 Mei 2019, 21:04