Перейти к публикации

ajax прогрузка статич. странмц


Рекомендованные сообщения

Здравствуйте! Как можно сделать и кто может сделать Ajax загрузку статических страниц на dle 11?

 

чтобы был oneclick на ссылке и оно прогружало tpl.

new.worldmin.ru

Ссылка на сообщение
Поделиться на других сайтах

php скрипт, на который делаете get/post запрос с параметром содержащим название страницы. В php производите выборку из БД. Удаляете содержимое <div id='dle-content'></div> и вставляете туда ответ от AJAX.

Готовых решений не будет, либо сами, либо заказывайте.

Изменено пользователем webair
Ссылка на сообщение
Поделиться на других сайтах
  14.10.2016 в 10:56, webair сказал:

php скрипт, на который делаете get/post запрос с параметром содержащим название страницы. В php производите выборку из БД. Удаляете содержимое <div id='dle-content'></div> и вставляете туда ответ от AJAX.

Готовых решений не будет, либо сами, либо заказывайте.

Расширить  

А кто может сделать? Знакомый отказался, т.к. в DLE нету единой точки входа!

Ссылка на сообщение
Поделиться на других сайтах
  15.10.2016 в 14:20, draxxx сказал:

т.к. в DLE нету единой точки входа

Расширить  

а он ничего побредовей не смог придумать для отмаза? :D

 

Ссылка на сообщение
Поделиться на других сайтах

Какую точку входа он там у вас ищет? Если не умеет получать фрагмент страницы, то вот ссылка на доментацию по jquery http://api.jquery.com/load/ и решение в одну строчку

$( "#result" ).load( "/test.html #dle-content" );

которая загрузит статическую страницу с именем test, и возмет только блок который у вас в шаблоне вашей статической страницы и разместит полученный результат в контейнере с ID result

Ссылка на сообщение
Поделиться на других сайтах
  16.10.2016 в 04:08, celsoft сказал:

Какую точку входа он там у вас ищет? Если не умеет получать фрагмент страницы, то вот ссылка на доментацию по jquery http://api.jquery.com/load/ и решение в одну строчку

$( "#result" ).load( "/test.html #dle-content" );

которая загрузит статическую страницу с именем test, и возмет только блок который у вас в шаблоне вашей статической страницы и разместит полученный результат в контейнере с ID result

Расширить  

Единая точка входа index.php. Это не решает проблем с Title страницы и ненужный контент не убирается ( [aviable=main] ).

Ссылка на сообщение
Поделиться на других сайтах
  16.10.2016 в 06:57, draxxx сказал:

Единая точка входа index.php

Расширить  

это что ещё за хоень? (прошу прощения за выражение)

  16.10.2016 в 06:57, draxxx сказал:

Это не решает проблем с Title страницы

Расширить  

ну так добавь ещё строчку скрипта для title

$().attr('title', 'Ololo')

 

  16.10.2016 в 06:57, draxxx сказал:

и ненужный контент не убирается

Расширить  

ну и ещё одна строчка

$('#dle-content').html('');

всё это заворачиваешь в функцию и наводишь красоту... можно сказать, что 50% скрипта, который будет подгружать статическую страницу тебе уже написали.

Ссылка на сообщение
Поделиться на других сайтах
  16.10.2016 в 14:23, odys сказал:

это что ещё за хоень? (прошу прощения за выражение)

ну так добавь ещё строчку скрипта для title

$().attr('title', 'Ololo')

 

ну и ещё одна строчка

$('#dle-content').html('');

всё это заворачиваешь в функцию и наводишь красоту... можно сказать, что 50% скрипта, который будет подгружать статическую страницу тебе уже написали.

Расширить  

1:

document.title = 'Новое говно';

 

2:

$('#dle-content').empty();

 

 

Изменено пользователем draxxx
2 раза одно и то же
Ссылка на сообщение
Поделиться на других сайтах

А вы умные...

 

Спасибо, получилось. Только жаль, что страница идёт так: /#page и как будто фантомная.Тоесть если ссылку отправлять с ней, то не откроется

Ссылка на сообщение
Поделиться на других сайтах
  18.10.2016 в 04:29, draxxx сказал:

А вы умные...

 

Спасибо, получилось. Только жаль, что страница идёт так: /#page и как будто фантомная.Тоесть если ссылку отправлять с ней, то не откроется

Расширить  

А чего она у вас с /#page?

Ссылка на сообщение
Поделиться на других сайтах
  19.10.2016 в 19:47, webair сказал:

А чего она у вас с /#page?

Расширить  

Уже использую не load, а history api. Грузит даже модули нормально.

Ссылка на сообщение
Поделиться на других сайтах
  20.10.2016 в 13:16, draxxx сказал:

Уже использую не load, а history api. Грузит даже модули нормально.

Расширить  

Вы смешали разные вещи воедино, что неправильно. history api ничего не грузит и не может грузить, он совершенно для другого, это API для манипулирования строкой URL браузера, а не для загрузки контента, причем если внимательно изучить документацию по нему, то можно использовать не только якоря, а вообще менять целиком всю строку.  Для примера смотрите как работает AJAX навигация по комментариям в DLE, если ее включить в настройках скрипта, и обратите внимание как меняется URL браузера, при этом загрузка будет через AJAX без перезагрузки страниц.

Ссылка на сообщение
Поделиться на других сайтах
  20.10.2016 в 13:29, celsoft сказал:

Вы смешали разные вещи воедино, что неправильно. history api ничего не грузит и не может грузить, он совершенно для другого, это API для манипулирования строкой URL браузера, а не для загрузки контента, причем если внимательно изучить документацию по нему, то можно использовать не только якоря, а вообще менять целиком всю строку.  Для примера смотрите как работает AJAX навигация по комментариям в DLE, если ее включить в настройках скрипта, и обратите внимание как меняется URL браузера, при этом загрузка будет через AJAX без перезагрузки страниц.

Расширить  

Это не правильно, но работает. Вот по этому примеру сделал http://plutov.by/post/html5_history_api и каким то образом загружает...

Ссылка на сообщение
Поделиться на других сайтах
  25.10.2016 в 11:09, draxxx сказал:

Это не правильно, но работает. Вот по этому примеру сделал http://plutov.by/post/html5_history_api и каким то образом загружает...

Расширить  

Загружает у вас код который стоит там где $.ajax ... к history api это отношения не имеет в history api это функция window.history.pushState и она позволяет заменить строку целиком без использования якорей. Якоря это древний метод, когда браузеры поддерживали только якоря, ситуация давно изменилась.

Ссылка на сообщение
Поделиться на других сайтах
  25.10.2016 в 12:20, celsoft сказал:

Загружает у вас код который стоит там где $.ajax ... к history api это отношения не имеет в history api это функция window.history.pushState и она позволяет заменить строку целиком без использования якорей. Якоря это древний метод, когда браузеры поддерживали только якоря, ситуация давно изменилась.

Расширить  

Тоесть так можно? http://new.worldmin.ru/

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...