Apakah maksud javascript:void(0) dan perbezaan antara kemahiran href=# dan href=javascriptvoid(0)_javascript

WBOY
Lepaskan: 2016-05-16 15:32:25
asal
1670 orang telah melayarinya

void ialah operator dalam Javascript, yang menyatakan bahawa ungkapan akan dinilai tetapi tidak mengembalikan nilai.

format penggunaan operator batal adalah seperti berikut:

1. javascript:void (ungkapan)

2. javascript: ekspresi kosong

ungkapan ialah ungkapan standard Javascript untuk dinilai. Tanda kurung di luar ungkapan adalah pilihan, tetapi merupakan amalan yang baik untuk ditulis.

Anda boleh menentukan hiperpautan menggunakan operator void. Ungkapan akan dinilai tetapi tiada apa yang akan dimuatkan ke dalam dokumen semasa.

Contoh - Mengklik hiperpautan tidak melompat

1:

2:

3:

4:

Selepas mengklik pada pautan, halaman akan menatal ke atas halaman # Titik utama lalai ialah #TOP (ujian sebenar mendapati bar skrol akan menatal ke atas sahaja). pautan mati. Semuanya mewakili pautan mati. Ia akan melompat dan tidak akan kembali ke atas.

Contoh-Mengapa location.href tidak melompat secara automatik?

<a href="javascript:void(0)" onclick="delete('123')">删除</a>
function delete(id){
 if(confirm("确实要删除[为什么location.href不自动跳转?]吗?")) {
  location.href="/delete.jsp&#63;id=" + id;
 }
}
Salin selepas log masuk

Tidak kira bagaimana anda menyemak kod di atas, tiada masalah dan location.href="/delete.jsp?id=" id berfungsi dengan baik di tempat lain. Mengapa kod ini berfungsi?

Sebabnya ialah void(0) menukar kod kepada:

<a href="javascript:delete('123')">删除</a>function delete(id) {
 if(confirm("确实要删除[为什么location.href不自动跳转?]吗?")) {
  location.href="/delete.jsp&#63;id=" + id;
 }
}
Salin selepas log masuk

Kami mendapati halaman itu melompat serta-merta dan data yang sepadan boleh dipadamkan seperti biasa.

Oleh kerana void ialah pengendali, ia akan mengira ungkapan, tetapi tidak akan mengembalikan nilai Sudah tentu, ia tidak akan mengubah sebarang kandungan halaman semasa dan ia tidak akan melompat seperti biasa.

Penerangan

Operator

kosong menilai ungkapan dan mengembalikan tidak ditentukan. Operator ini paling berguna apabila anda ingin menilai ungkapan tetapi tidak mahu hasilnya kelihatan kepada skrip yang lain.

Menggunakan javascript:void(0) secara langsung untuk pautan (href) boleh menyebabkan beberapa masalah dalam IE, seperti menyebabkan animasi gif berhenti dimainkan, dsb. Oleh itu, cara paling selamat ialah menggunakan "#". Untuk mengelakkan melompat ke bahagian atas halaman selepas mengklik pautan, acara onclick boleh mengembalikan palsu.

PS: Perbezaan antara href=# dan href=javascriptvoid(0)

#" mengandungi maklumat lokasi
Titik utama lalai ialah #atas, iaitu bahagian atas halaman web
Dan javascript:void(0) hanya mewakili pautan mati
Itulah sebabnya kadangkala halaman itu sangat panjang dan pautan penyemakan imbas jelas # tetapi ia melompat ke bahagian atas halaman
Dan javascript:void(0)
Ini tidak berlaku, jadi sebaiknya gunakan void(0)
apabila memanggil skrip. Atau

Beberapa cara untuk membuka pautan dalam tetingkap baharu

1.window.open('url')


2. Gunakan fungsi tersuai


<script>   
function openWin(tag,obj)   
{    
obj.target="_blank";    
obj.href = "Web/Substation/Substation.aspx&#63;stationno="+tag;    
obj.click();   
}   
</script> 
<a href="javascript:void(0)" onclick="openWin(3,this)">LINK_TEST</a> 
window.location.href="" 
Salin selepas log masuk
------------------------------------------------ --- --------------------------------

Jika ia adalah #, ia akan melonjak ke atas Beberapa penyelesaian daripada kegemaran peribadi:

1: 2: 3: 4: 5: (Nampaknya ia tidak boleh dipaparkan dalam FF)



------------------------------------------------ --- --------------------------------

Kandungan di atas ialah apa yang editor memperkenalkan kepada anda maksud javascript:void(0) dan perbezaan antara href=# dan href=javascriptvoid(0).

Label berkaitan:
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!