2010-08-29 64 views
5

我新的網站設計和javascript,我不明白爲什麼它很常見的網頁設計師使用無效(0)以下的語法:爲什麼使用'href =「javascript:void(0);」'而不是更友好的用戶界面?

<a onclick="this.blur();return false;" href="javascript:void(0);" class="btn"> 

因爲這實際上表現在較低的爲什麼不想出一種讓用戶更友好的方式?也許這是因爲設計師沒有時間去做這種UI調整。

作爲上述語法的替代方案,您會有什麼建議可以幫助最終用戶?

回答

1

如果只是最終用戶的樂於助人,那麼這可能會做什麼?

<a onclick="this.blur();return false;" href="#Click to hide" class="btn"> 

因爲你無論如何返回虛假它實際上包含任何

<a onclick="this.blur();return false;" href="Click to hide" class="btn"> 

不過,我認爲其原因是,如果你禁用了Javascript,它實際上沒有任何效果,因爲反對在那裏寫一些其他的東西(第一個例子會改變URL的散列/錨點部分,第二個例子可能會導致錯誤)。無論哪種方式,他們仍然看起來很有趣(儘管與原始網址一致)。

然後再次,如果這件事只是由於JavaScript可見,我會說繼續前進,並假設JavaScript可用。雖然我還是寧可在安全方面,反正使用哈希... :)

編輯
我才意識到不是所有的瀏覽器會顯示在狀態欄A HREF的「#」部分(沒有任何瀏覽器能做到這一點嗎?),所以我會使用javascript:void(0);或者簡單地#,如果你沒有使用任何錨點,並且將title屬性設置爲描述性的。

編輯
我想我是有點太快了......我覺得javascript:void確實是避免任何影響。然而,更好的解決方案根本不會使用a -tags(我通常只是將onclick放在任何東西上,實際上我通常使用jquery,之後將它添加到某些類或ID中)。

8

理想的解決方案是build on things that work

本文討論利用Yahoo用戶界面庫JavaScript庫進行漸進式增強,以提高對javascript模擬交互事件的可訪問性。

舉:基督教海爾曼

+1

表示同意,但鏈接的外部內容的總結可能會有所幫助。 – 2010-08-29 23:34:32

相關問題