В исходном тексте вашего веб-сайта я вижу, что вы используете какой-то действительно старомодный Javascript для работы эффекта AJAX. Учитывая ваш текущий запрос, учитывая тот факт, что на вашем веб-сайте уже есть некоторые продвинутые потребности в Javascript, я рекомендую вам проверить jQuery - тогда вы могли бы сделать что-то подобное (упрощенно, конечно, но, возможно, Достаточно, чтобы вы отправились в путь):
<ul id='menu'>
<li><a href="pages/Home.html" class="home"><span>Home</span></a></li>
<li><a href="pages/About.html" class="about"><span>About</span></a></li>
<li><a href="pages/Services.html" class="services"><span>Services</span></a></li>
<li><a href="pages/Portfolio.html" class="portfolio"><span>Portfolio</span></a></li>
<li><a href="pages/Contact.html" class="contact"><span>Contact</span></a></li>
</ul>
А затем позвольте вам заменить монроши, которые у вас есть для Javascript, на:
$(function() {
$('a', '#menu').click(function() { // when someone clicks on a menu link...
// get the page contained in the links href attribute....
$.get($(this).attr('href'), function(html) {
// once the content is here, animate the content div...
$('#MainContent').animate({
height: '20px' // make the div smaller....
}, 'fast', function() {
// when it is all the way down, update the div with the new
// html, and animate it back up....
$(this).html(html).animate({
height: 'auto'
}, 'fast');
});
});
return false;
});
});
Это сделает ваш сайт:
- Более совместима с различными браузерами, поскольку jQuery устраняет любые несовместимости.
- Более совместимый со стандартами / передовой практикой (т.е. без встроенного Javascript)
- Более доступно для людей с отключенным Javascript. Как сейчас, если у меня не включен Javascript (~ 5% людей), и я нажимаю на любую из ссылок вашего меню, ничего не произойдет. С этим решением, по крайней мере, будет отображаться содержимое страницы, хотя вы могли бы сделать некоторый код на стороне сервера, чтобы сделать так, чтобы вся страница отображалась, если запрос не приходит из Javascript.