Технология прятания под кат в Livejournals

Статус
Закрыто для дальнейших ответов.

vadval15

Новичок
Регистрация
12.01.2018
Сообщения
1
В Livejournals имеется своя технология прятания под кат, которая в общем имеет следующий вид:
Код:
<b data-widget='ljcut' data-widget-options='{"sticky":false,"cutid":1,"journalid":"19281164","placeholders":0,"ditemid":3890884}' class="ljcut-link lj-widget">
<span class='ljcut-brace'>(&nbsp;</span>
<span class="ljcut-decor">
<a href="https://journalname.livejournal.com/3890884.html#cutid1" class="ljcut-link-expand" title="Читать дальше..." >Читать дальше...</a>
<a href="https://journalname.livejournal.com/3890884.html#cutid1" class="ljcut-link-collapse">Свернуть</a></span>
<span class='ljcut-brace'>&nbsp;)</span></b>
При активации первой из чередующихся гиперссылок дополнительный текст появляется, а второй - исчезает. Очевидно, что в данном случае он не прячется, а вставляется из другого источника по приведенному url-адресу. Неясным остаётся сам механизм вырезания текста с другой страницы и манипуляций с ним после какой-либо из приведенных гиперссылок при сохранении неизменной адресной строки браузера. Буду признателен за любой совет по этому вопросу.
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 136
ajax'om получает страницу непосредственно с контентом, POST-запрос идёт к livejournal.com/__api/
Отсылает:


Получает:


Пора бы уже научиться пользоваться инструментами разработчика в Firefox или Chrome, если появляются такие вопросы. Без этого дальше сложно будет.

Выше описанное обращение к API с помощью XHR (ajax) работает только внутри домена или если разрешено политикой безопасности сайтов

Но и без этого можно парсить контент с сайтов (если нет апи и разумеется если политика безопасности позволяет). Способов несколько. Вот два самых популярных:
  • С помощью регулярного выражения ищем по ТЕКСТУ страницы необходимый кусок
  • С помощью DOMParser (и его полифил, например на jQuery есть) также ищем по DOM страницы и получаем необходимый элемент
После этого он вставляется в страницу через innerHTML или другим более современным способом.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ