Saya memiliki penangan klik untuk tautan tertentu, di dalamnya saya ingin melakukan sesuatu yang mirip dengan berikut ini:
window.location = url
Saya memerlukan ini untuk benar-benar membuka url di jendela baru, bagaimana cara melakukannya?
javascript
jquery
Chris
sumber
sumber
Berikut cara memaksa target di dalam handler klik:
sumber
$(this).attr('target', '_blank');
bisa diubah menjadithis.target = "_blank";
Juga, jika tautan jangkar pada halaman dapat dimodifikasi untuk memilikirel="external"
atribut maka Anda dapat membuat penangan klik global untuk halaman dengan selektor jQuerya[rel="external"]
daripada memiliki klik penangan per tautan yang dipilih dengana#link_id
Anda perlu menggunakan
window.open(url);
referensi:
http://www.htmlcodetutorial.com/linking/linking_famsupp_120.html
http://www.w3schools.com/jsref/met_win_open.asp
sumber
Anda juga bisa menggunakan metode jquery prop () untuk ini.
sumber
Saya baru saja menemukan solusi menarik untuk masalah ini. Saya membuat span yang berisi informasi berdasarkan pengembalian dari layanan web. Saya berpikir untuk mencoba meletakkan link di sekitar span sehingga jika saya mengkliknya, "a" akan menangkap klik tersebut.
Tetapi saya mencoba menangkap klik dengan span ... jadi saya berpikir mengapa tidak melakukan ini saat saya membuat span.
Saya kemudian mengikat handler klik ke span yang membuat tautan berdasarkan atribut 'data-href':
Ini berhasil memungkinkan saya untuk mengklik span dan membuka jendela baru dengan url yang sesuai.
sumber
Ada apa dengan
<a href="myurl.html" target="_blank">My Link</a>
? Tidak perlu Javascript ...sumber
solusi ini juga mempertimbangkan kasus url kosong dan menonaktifkan (abu-abu) tautan kosong.
sumber
Berhati-hatilah jika Anda ingin menjalankan permintaan AJAX di dalam fungsi penanganan kejadian untuk kejadian klik. Untuk beberapa alasan Chrome (dan mungkin browser lain) tidak akan membuka tab / jendela baru.
sumber
Ini bukan perbaikan yang sangat bagus tetapi berhasil:
CSS:
HTML:
Javascript:
Contoh langsung: http://jsfiddle.net/7eRLb/
sumber
Microsoft IE tidak mendukung nama sebagai argumen kedua.
Masalahnya adalah
window name
. Ini akan berhasil:Microsoft hanya mengizinkan argumen berikut, Jika menggunakan argumen itu sama sekali:
Periksa situs Microsoft ini
sumber