Saya punya tautan:
<ul id="titleee" class="gallery">
<li>
<a href="#inline" rel="prettyPhoto">Talent</a>
</li>
</ul>
dan saya mencoba memicunya dengan menggunakan:
$(document).ready(function() {
$('#titleee').find('a').trigger('click');
});
Tapi itu tidak berhasil.
Saya juga sudah mencoba: $('#titleee a').trigger('click');
Edit :
Saya sebenarnya perlu memicu apa pun yang dipanggil di sini <a href="#inline" rel="prettyPhoto">
location.href($('#titleee').find('a').attr("href"));
?$('#titleee a')[0].click();
. Dengan kata lain, gunakan metode klik DOM, bukan yang jQuery. Suara positif Graham Hotchkiss !$('ul#titleee li a[href="#inline"]').click();
Jawaban:
Jika Anda mencoba untuk memicu suatu peristiwa pada jangkar, maka kode yang Anda miliki akan berfungsi. Saya membuat ulang contoh Anda di jsfiddle dengan eventHandler yang ditambahkan sehingga Anda dapat melihat bahwa itu berfungsi:
Apakah Anda mencoba menyebabkan pengguna menavigasi ke titik tertentu pada halaman web dengan mengklik jangkar, atau Anda mencoba memicu acara yang terikat padanya? Mungkin Anda belum benar-benar mengikat acara klik dengan sukses ke acara tersebut?
Ini juga:
setara dengan ini:
Tidak perlu menelepon find. :)
sumber
Maaf, pengatur acara benar-benar tidak diperlukan. Apa yang Anda butuhkan adalah elemen lain dalam tag untuk diklik.
Jquery:
Ini semua tentang apa yang Anda klik dan bukan tag tetapi hal di dalamnya. Sayangnya, teks kosong sepertinya tidak dikenali oleh JQuery, tetapi itu dengan vanilla javascript:
Atau dengan mengakses objek jQuery sebagai array
sumber
.click()
justru itulah yang saya butuhkan!Karena pertanyaan ini berada di peringkat # 1 di Google untuk "memicu klik pada
<a>
elemen" dan tidak ada jawaban yang menyebutkan bagaimana Anda melakukannya, ini adalah bagaimana Anda melakukannya:Penjelasan: Anda memicu a
click
pada elemen-html yang mendasarinya, bukan objek-jQuery .Terima kasih googler :)
sumber
Dengan kode yang Anda berikan, Anda tidak dapat mengharapkan sesuatu terjadi. Saya kedua @mashappslabs: pertama menambahkan pengendali acara:
kemudian picu acara Anda:
dan Anda akan melihat pesan di konsol Anda.
sumber
trigger
, tetapi tindakan tag tidak terjadi. Sepertinya acara tidak merambat ke elemen DOM terkait. Jawaban oleh @GrahamHotchkiss adalah satu-satunya yang bisa diandalkan untuk saya.Jika Anda mencoba memicu suatu peristiwa di jangkar, maka kode yang Anda miliki akan berfungsi.
ATAU
ATAU
sumber
Anda harus mengatur event klik terlebih dahulu kemudian Anda dapat memicu dan melihat apa yang terjadi:
sumber
Ini adalah demo cara memicu acara
sumber
Untuk tautan ini harus berfungsi:
sumber
Ini tidak persis menjawab pertanyaan Anda, tetapi akan memberi Anda hasil yang sama dengan lebih sedikit sakit kepala.
Saya selalu memiliki metode panggilan peristiwa klik yang berisi semua logika yang ingin saya jalankan. Sehingga saya bisa langsung memanggil metode jika saya ingin melakukan tindakan tanpa klik yang sebenarnya.
sumber
Anda harus memanggil
.click()
metode asli elemen atau menggunakancreateEvent
API.Untuk info lebih lanjut, silakan kunjungi: https://learn.jquery.com/events/triggering-event-handlers/
sumber