{% else-1 %}
Обновить
* Тема закрыта!
1.
Wins * 5.64
[автор] (10 ноя 2015, 19:04) [0/0] [0] [спам] [под]

Всем привет. Интересует как реализовать подгрузку страниц на javascript грамотно и правильно. Все плюсы и минусы? Как это влияет на пс? Как быть с различными браузерами (opera mini к примеру)?
P.S. В java полный ноль *

2.
Rabbyte * 0.57
(10 ноя 2015, 19:14) [0/1] [-1] [спам] [под]

если в java 0 то никак

3.
Wins * 5.64
[автор] (10 ноя 2015, 19:17) [0/0] [0] [спам] [под]

Rabbyte, я не просил умничать.

4.
Rabbyte * 0.57
(10 ноя 2015, 19:19) [0/0] [0] [спам] [под]
Wins,

учи java

5.
Anvar * 3.33
(10 ноя 2015, 20:03) [0/0] [0] [спам] [под]

Так java или всё же javascript?

На ps влияет плохо, если не правильно реализовывать. Нужно что бы по ссылке была доступна подгружаемая страница, кроме того это полезно если у пользователя отключён javascript или не поддерживается.

opera mini умеет загружать, по этому проблем особых с ней нет.

В этот блок будет загружено содержимое
<div id="block-id"></div>

Загрузка содержимого url.php
<script type="text/javascript">
$(document).ready(function() {
$.ajax({
url: "url.php",
type: "GET",
cache: true,
success: function(data) {
$("#block-id"*.html(data);
}
});
});
</script>

Определить в php что происходит ajax запрос:
<?php

if ($_SERVER('HTTP_X_REQUESTED_WITH') == "XMLHttpRequest"* {
echo 'Отдать страницу только если произошёл ajax запрос.';
}
echo 'отдать содержимое в любом случае';

?>

6.
Wins * 5.64
[автор] (13 ноя 2015, 23:06) [0/0] [0] [спам] [под]

Anvar, спасибо за подсказку.
Замутил как то так. Может понадобится кому.

[code]if(history.pushState){
$(window).on('popstate', function(event){
var url = event.location || (event.originalEvent && event.originalEvent.location) || document.location;

LoadUrl(null, url.href, 'get', null);

});
}


$(document).on('click', 'a[href]', function(event){

var url = $(this).attr('href');
LoadUrl(event, url, 'get', null);

});


$(document).on('click', 'input[type="submit"]' ,function(event){

var url = $('form').attr('action');
var method = $('form').attr('method');
var form = 'submit=ok&'+$('input,textarea,select').serialize();
LoadUrl(event, url, method, form);

});


function LoadUrl(event, url, method, form){

if(event != null) {
history.pushState(url, null, url);
event.preventDefault();
}
if(form == null) $('#page').html('<div align="center">LOADING ...</div>');
$.ajax({
url: url,
type: method,
data: form,
success: function(data){
$('#page').html(data);
$(document).scrollTop(0);
}});

}[/code]


Изм. 1 раз. / Посл. изм.
Wins * 5.64
(13 ноя 2015, 23:07)
7.
Wins * 5.64
[автор] (24 фев 2016, 05:23) [0/0] [0] [спам] [под]

Тема закрыта для обсуждения! *

  • 1 из 1
Подписаны: 0
Скачать тему | Файлы темы | Фильтр сообщений