Ajax, просто и практично, ничего лишнего. Контент может быть любой: статичный, динамичный, текст, картинки, флэш, видео, аудио. Может послужить основой небольшого сайта.
Пример использования:
Между <head></head>
:
<script> function showContent(link) { var cont = document.getElementById('content'); var loading = document.getElementById('loading'); cont.innerHTML = loading.innerHTML; var http = createRequestObject(); if( http ) { http.open('get', link); http.onreadystatechange = function () { if(http.readyState == 4) { cont.innerHTML = http.responseText; } } http.send(null); } else { document.location = link; } } // ajax объект function createRequestObject() { try { return new XMLHttpRequest() } catch(e) { try { return new ActiveXObject('Msxml2.XMLHTTP') } catch(e) { try { return new ActiveXObject('Microsoft.XMLHTTP') } catch(e) { return null; } } } } </script>
Между <body></body>
:
<a href="#" onClick="showContent('page1.html')">Страница 1</a>
<a href="#" onClick="showContent('page2.html')">Страница 2</a>
<!--//-->
<div id="content">
<!-- CONTENT -->
</div>
<!--//-->
<div id="loading" style="display: none">
Идет загрузка...
</div>
<script> showContent('page1.html') // страница по умолчанию </script>
Комментарии:
Slayder#
От души бро! Единственный рабочий вариант походу для бустрап.. )) ……………………..
coder hol es#
)Рад
Сергей#
Скрипт не работает в modx
coder hol es#
Значит, конфликт. Каждый скрипт имеет свои границы применения – не так ли?
Динар#
У меня контейнер находится в самом конца, и при нажатии на кнопку (ссылку) страница появляется сначала, а не там где блок. Хотелось бы узнать как сделать так чтоб при прогрузке контента страница оставалась на своем месте?