Просмотр полной версии : Загрузка контента в DIV по гиперссылке из другого DIV
Здравствуйте, гуру форума. Хотелось бы узнать, есть ли способ в двухколоночном сайте, свёрстанным с помощью DIV'ов сделать так, чтобы по ссылке из левого DIV (левая колонка) в DIV с контентом, который находится правее и занимает большую площать страницы под контент, грузилась страничка. Раньше так в фрэймах можно было делать, но с тех пор многое изменилось и пришлось по надобности снова навёрстывать. Заранее спасибо.
p.s. обязательно чтобы ссылка открывалась не через button, а картинку, т.е. как если бы это было с простым html кодом
<a href><img src></img></a>
есть ли способ
таки есть... :yes: И даже несколько. ;)
yashka525
18.11.2011, 10:24
AJAX (http://javascript.ru/ajax/intro)
это понятно, но все же хотелось бы примерчик, а то так я буду очень долго сидеть над этим делом, хотя велосипед уже наверняка изобретен )
yashka525
18.11.2011, 10:29
Примерчик. (http://musicforchrist.info/#!/Main)
yashka525
18.11.2011, 10:32
грузилась страничка.
Аа, сорри, не тот примерчик. Тута не страничка, а просто контент. Ну если все происходит на одном домейне, то копать в эту сторону - AJAX (http://javascript.ru/ajax/intro).
Вот второй способ, он немного посложнее, но и современнее.
Если используете какой нибудь php framework, то этот способ становится намного удобнее чем якорная или аналогичная навигация...
http://habrahabr.ru/blogs/javascript/123106/
http://xmlhttprequest.ru/ копаю в эту сторону
var xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET', 'blablabla.php', false); // открываем соединение
xmlhttp.send(null); // отправляем запрос, и висим пока не придет ответ
if(xmlhttp.status == 200) { // проверяем результат, 200 OK - все хорошо
alert(xmlhttp.responseText); // выдаем алерт с полученным контентом
}
както так, но на этом пока всё
UPD
var myDiv = document.getElementById("myDivId");
myDiv.innerHtml = xmlhttp;
поправьте, если туплю. Но я так понимаю, что таким образом в див подсовывается то, что получил xmlhttprequest и положил в переменную
yashka525
19.11.2011, 22:47
myDiv.innerHtml = xmlhttp;
myDiv.innerHTML = xmlhttp.responseText;
Это вместо alert(xmlhttp.responseText);
xmlhttp.open('GET', 'blablabla.php', false);
вот в этом месте что делает false или true ?
yashka525
21.11.2011, 21:20
Если true, то запрос будет асинхронным и не заметным для пользователя.
А иначе, если false, то запрос будет синхронным, и браузер подвиснет.
Читайте там же, на http://xmlhttprequest.ru - Использование XMLHTTPRequest (http://xmlhttprequest.ru/#use)
vBulletin® v3.6.7, Copyright ©2000-2025, Jelsoft Enterprises Ltd. Перевод: zCarot