HTML sayfamda bu bağlantı var:
<a href = ""
onclick = "setBodyHtml ('new content'); return false; "
> click here </a>
SetBodyHtml () işlevi şu şekilde tanımlanır:
function setBodyHtml (s)
{ document.body.innerHTML = s;
}
Bağlantıyı tıkladığımda bağlantı kaybolur ve tarayıcıda gösterilen metin "yeni içerik" olarak değişir.
Ama "yanlış" ı bağlantımdan kaldırırsam, bağlantıyı tıklatmak hiçbir şey yapmaz. Neden?
Yanlış döndürmezsem bağlantıyı tıklatıp hedef sayfasını görüntülemenin varsayılan davranışı gerçekleşmezse iptal edilmez. ANCAK, burada köprünün href "" olduğundan SAME geçerli sayfasına geri bağlanır. Böylece sayfa etkili bir şekilde yenilenir ve görünüşe göre hiçbir şey olmaz.
Arka planda setBodyHtml () işlevi hala yürütülüyor. Bağımsız değişkenini body.innerHTML'ye atar. Ancak sayfa hemen yenilendiği / yeniden yüklendiği için, değiştirilmiş gövde içeriği birkaç milisaniyeden fazla görünür kalmaz, bu yüzden görmeyeceğim.
Bu örnekte "return false" ifadesinin kullanılmasının neden YARARLI olduğu gösterilmektedir.
Bağlantıya altı çizili metin olarak görünmesi için bağlantıya BAZI href atamak istiyorum. Ancak, bağlantıyı tıklamanın yalnızca sayfayı yeniden yüklemesini istemiyorum. Varsayılan navigasyon = davranışın iptal edilmesini ve fonksiyonumun etkin kalması ve çağrılması için herhangi bir yan etkinin neden olmasını istiyorum. Bu nedenle "false döndürürüm".
Yukarıdaki örnek, geliştirme sırasında hızlı bir şekilde deneyebileceğiniz bir şeydir. Üretim için büyük olasılıkla JavaScript'te bir tıklama işleyicisi atar ve bunun yerine preventDefault () öğesini çağırırsınız. Ancak hızlı bir deneme için yukarıdaki "return false" hile yapar.