Anda dapat menonaktifkan semua link di halaman dengan kelas gaya ini:
a {
pointer-events:none;
}
Sekarang tentu saja triknya adalah menonaktifkan tautan hanya jika Anda perlu, ini adalah cara melakukannya:
gunakan kelas A kosong, seperti ini:
a {}
lalu saat Anda ingin menonaktifkan tautan, lakukan ini:
GetStyleClass('a').pointerEvents = "none"
function GetStyleClass(className)
{
for (var i=0; i< document.styleSheets.length; i++) {
var styleSheet = document.styleSheets[i]
var rules = styleSheet.cssRules || styleSheet.rules
for (var j=0; j<rules.length; j++) {
var rule = rules[j]
if (rule.selectorText === className) {
return(rule.style)
}
}
}
return 0
}
CATATAN: Nama aturan CSS diubah menjadi huruf kecil di beberapa browser, dan kode ini peka huruf besar / kecil, jadi lebih baik gunakan nama kelas huruf kecil untuk ini
untuk mengaktifkan kembali tautan:
GetStyleClass('a').pointerEvents = ""
periksa halaman ini http://caniuse.com/pointer-events untuk informasi tentang kompatibilitas browser
Saya pikir ini adalah cara terbaik untuk melakukannya, tetapi sayangnya IE, seperti biasa, tidak akan mengizinkannya :) Saya tetap memposting ini, karena menurut saya ini berisi informasi yang dapat berguna, dan karena beberapa proyek menggunakan browser yang tahu , seperti saat Anda menggunakan tampilan web di perangkat seluler.
jika Anda hanya ingin menonaktifkan SATU link (saya hanya menyadari bahwa itulah pertanyaannya), saya akan menggunakan fungsi yang secara manual menetapkan url halaman saat ini, atau tidak, berdasarkan kondisi itu. (seperti solusi yang Anda terima)
pertanyaan ini jauh lebih mudah dari yang saya kira :)