У всех разные потребности, давайте пройдемся по вашему списку:
1) У меня никогда не было проблем с макетом или стилем страницы из-за JavaScript. Если у вас есть HTML и CSS в порядке, отсутствующий javascript будет близок к невидимому.
Вы можете скрыть элементы в CSS и отображать их с помощью JavaScript, когда они будут готовы. Вы можете использовать jQuery's .show();
метод
вот пример:
<!DOCTYPE html>
<html>
<head>
<style>
div { background:#def3ca; margin:3px; width:80px;
display:none; float:left; text-align:center; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<button id="showr">Show</button><button id="hidr">Hide</button>
<div>Hello 3,</div><div>how</div><div>are</div><div>you?</div>
<script>
$("#showr").click(function () {
$("div").first().show("fast", function showNext() {
$(this).next("div").show("fast", showNext);
});
});
$("#hidr").click(function () {
$("div").hide(1000);
});
</script>
</body>
</html>
Если у вас все еще есть проблемы, вы можете разделить свой javascript на те, на которые опирается ваш сайт, и другие сценарии и поместить некоторые в верхний колонтитул, а некоторые в нижний колонтитул.
2) Это ошибка пользователя, вы не можете это контролировать, но вы можете проверить, есть ли необходимые функции, и попытаться перезагрузить их. Большинство плагинов предлагают какое-то подтверждение, запущены они или нет, так что вы можете запустить тест и попытаться перезагрузить их.
Вы также можете отложить загрузку файлов до тех пор, пока пользователь не потребует их, например, ждать их до focus
на form
, чтобы загрузить сценарии проверки, или прокрутить мимо определенной точки, чтобы загрузить код для вещей ниже «сгиба».
3) Если страница die
s, вы все равно получите полупустую страницу. С PHP 5 вы можете лучше обрабатывать ошибки с exception
s
if (!$result = mysql_query('SELECT foo FROM bar', $db)) {
throw new Exception('You fail: ' . mysql_error($db));
}
и это
try
{
// Code that might throw an exception
throw new Exception('Invalid URL.');
}
catch (FirstExceptionClass $exception)
{
// Code that handles this exception
}
catch (SecondExceptionClass $exception)
{
// you get the idea what i mean ;)
}
4) Если вы минимизируете свой скрипт, он не должен быть намного больше, чем изображения. JQuery - это миниатюрный 32KB & gziped. Сценарий JQuery-UI составляет 51 КБ. Это не так уж плохо, большинство плагинов должно быть даже меньше, чем это.
Поэтому я предлагаю вам сделать то, что вы должны сделать, чтобы получить желаемые результаты, но искать лучшие практики, которые уменьшают ошибки и лишний код. Всегда есть лучший способ снять шкуру с кошки ...