Yanıtları tamamlamak için, burada web sitelerini ziyaret ettiğinizde ve oluşturulan HTML ve JavaScript kodu üzerinde kontrolünüz olmadığında olayları kaldırmanın gerçek dünyadan örnekleri verilmiştir.
Bazı sinir bozucu web siteleri, oturum açma formlarına kullanıcı adlarını kopyalayıp yapıştırmanızı engelliyor; bu, onpaste
etkinlik onpaste="return false"
HTML özelliğiyle eklenirse kolayca atlanabilir . Bu durumda, giriş alanına sağ tıklamamız, Firefox gibi bir tarayıcıda "Öğeyi incele" yi seçmemiz ve HTML özelliğini kaldırmamız gerekir.
Ancak, etkinlik şu şekilde JavaScript aracılığıyla eklenmişse:
document.getElementById("lyca_login_mobile_no").onpaste = function(){return false};
Etkinliği JavaScript aracılığıyla da kaldırmamız gerekecek:
document.getElementById("lyca_login_mobile_no").onpaste = null;
Örneğimde, ziyaret ettiğim web sitesi tarafından kullanılan metin giriş kimliği olduğu için "lyca_login_mobile_no" kimliğini kullandım.
Olayı kaldırmanın başka bir yolu (tüm olayları da kaldırır), düğümü kaldırmak ve yeni bir tane oluşturmaktır, tıpkı addEventListener
kaldıramayacağımız anonim bir işlevi kullanarak olaylar eklemek için kullanılmışsa yapmamız gerektiği gibi removeEventListener
. Bu, tarayıcı konsolu aracılığıyla bir öğeyi inceleyerek, HTML kodunu kopyalayarak, HTML kodunu kaldırarak ve ardından HTML kodunu aynı yere yapıştırarak da yapılabilir.
JavaScript aracılığıyla daha hızlı ve otomatik olarak da yapılabilir:
var oldNode = document.getElementById("lyca_login_mobile_no");
var newNode = oldNode.cloneNode(true);
oldNode.parentNode.insertBefore(newNode, oldNode);
oldNode.parentNode.removeChild(oldNode);
Güncelleme: Web uygulaması, Angular gibi bir JavaScript çerçevesi kullanılarak yapılmışsa, önceki çözümlerin çalışmadığı veya uygulamayı bozmadığı görülür. Yapıştırmaya izin vermek için başka bir geçici çözüm, değeri JavaScript aracılığıyla ayarlamak olabilir:
document.getElementById("lyca_login_mobile_no").value = "username";
Şu anda, Angular gibi tamamen JavaScript ile yazılmış bir uygulamayı bozmadan tüm form doğrulama ve kısıtlama olaylarını kaldırmanın bir yolu olup olmadığını bilmiyorum.