2009-05-20 3 views
0

В настоящее время многие ссылки на наших страницах меняются на href="javascript:void(0);" на pageload, но если вы нетерпеливы (как и большинство пользователей), вы можете щелкнуть ссылки до того, как страница загрузится и приземлится на clunkier, non-javascript, ajax-страницы.прогрессивное улучшение на стороне сервера?

Я думаю о прогрессивном улучшении много в эти дни, и я предсказываю, что большинство наших пользователей будет не включено Javascript (нет данных пока мы havn't пока запущен альфа)

ли это плохо идея генерировать некоторый индикатор того, что пользователь имеет javascript для сеанса, а затем обслуживать страницы, которые предполагают javascript? (т. е. на сервере поставить href="javascript:void(0);" с самого начала)

ответ

4

Почему бы просто не сделать это?

<a href="oldversion.htm" onclick="...something useful......; return false;">link</a> 

return false сообщает браузеру, чтобы не вести к URL в HREF.

Теперь посетители js получают причудливые js, а пользователи non-js тихо отходят; и нет необходимости менять ссылки на pageload.

+0

Я полностью забыл об этом! good call mate :) – Jiaaro

+0

Я изменил атрибут href с помощью функции jquery dom ready! Я БЫЛ РЕМИСС;) haha – Jiaaro

0

Вы проводите прогрессивное повышение при нагрузке? Вы можете попытаться переместить его в (кросс-браузерную версию) DOMReady.

0

Не могли бы вы делегировать это документу, чтобы ваш HTML был чистым?

Например, в JQuery:

$(document) 
    .click(function(){ return false }) 
    .ready(function(){ $(this).unbind("click") }) 
Смежные вопросы