Забыли пароль?
Запросите новый здесь.

Автор темы: Pisatel
ID темы: 2347
Информация:
Тема содержит 20 сообщения, была просмотрена 26667 раз.
Просмотр темы
PHP-Fusion Russia » Веб-разработка » Javascript, ajax, jquery
 Распечатать тему
Как открыть ajax содержимое для сканирования пс?
Pisatel
Всем доброго времени суток. Суть вопроса- в названии темы. Я понимаю, что есть https://support.g...4992?hl=ru такое решение. Но соль в том, что сама ссылка выглядит так:
Скачать исходники  Код
    <li><a class="mypopup_info" data-articleid="1">Свадьба<span>подробно</span></a></li>


то есть у нее нет атрибута href (html5 это позволяет), а подгрузка содержимого происходит при mouseenter. Кто решал подобное? Буду признателен за идеи.
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Polarfox
Pisatel, сделай валидный href и все, пусть все работает без жабы и с жабой - это решит все проблемы.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Pisatel
PolarFox, то есть, добавить href, через жабу отключить переход, создать аналог страницы html с содержимым (для тех, у кого отключена жаба), правильно понимаю?
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Razor
Pisatel написал:

PolarFox, то есть, добавить href, через жабу отключить переход, создать аналог страницы html с содержимым (для тех, у кого отключена жаба), правильно понимаю?

А зачем создавать аналог страницы, они же у тебя откуда то отображаются, значит страницы уже существуют..
Если конечно это не popup фрейм. В этом случае лучше создать эти страницы, если ты конечно хочешь чтобы они индексировались пс и отображать их таким же образом, но уже с существующих страниц..
Sr. Software developer
plesk.com
 
Pisatel
Razor, это именно popup: в файле в массиве хранится текст (сайт одностраничный, бд лишняя), который по data-articleid из ссылки подгружается в уже готовый див (всплывает поверх всего содержимого)
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Polarfox
Ну пропиши ссылку по которой этот попуп получается с серва, только переход с поиска привести может в эту хрень, так что желательно навигация или типа того, если вызов идет не по аяксу.

гугл обожает выдавать принт версии вместо нормальных, скажем форума ипб или булки.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Pisatel
PolarFox написал:
...гугл обожает выдавать принт версии вместо нормальных, скажем форума ипб или булки.

Угу, замечал подобное... Хрень, короче, получается. Чтобы скормить пс 8кб текста, нужно хрен знает че придумать...
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Polarfox
Это потому что ты ставишь аякс базовым, а он должен быть дополнительным, изначально хреновая идея.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Pisatel
PolarFox написал:

Это потому что ты ставишь аякс базовым, а он должен быть дополнительным, изначально хреновая идея.

Немного не понял. Суть в том, что, в принципе, все можно было встроить в один файл главной страницы, скрыв все это display:none и показав при помощи жабы. Но тогда страница будет некошерно объемной, а это уже нехорошо, на мой взгляд. Вот и решил я убрать в отдельный файл некоторый текст, вызывая его только при необходимости (посетителя). И в чем это неверный подход?
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Polarfox
В том что ты об этом изначально не думал, ссылки должны вести на конкретную страницу, сверху - вывод ажакса если клиент умеет/могет.
В таком случае пауки не умеют в скрипты, и запрашивают страницу.

Если ты не считаешь что это нормально - то я убеждать не буду.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Pisatel
PolarFox, пожалуй, соглашусь: изначально просто не думал, что подобное может возникнуть. Благодарю за подсказку.

Объединено 19.10.2014 08:51:
Новый вопрос. В общем, теперь ссылки у меня выглядят так:
Загрузить источник  GeSHi: HTML
  1. <a href='app/work.php#!1' class='mypopup_info'>Ссылка</a>
Добавлено за 0.003 секунд, используя GeSHi 1.0.8.10

Для того, чтобы пользователь не перешел по ней, добавил
Загрузить источник  GeSHi: Javascript
  1. $(function() {
  2. $('a.mypopup_info').click(function(e) {
  3. e.preventDefault();
  4. });
  5. });
Добавлено за 0.002 секунд, используя GeSHi 1.0.8.10

Соответственно, бот должен увидеть эту ссылку как app/work.php?_escaped_fragment_=1, в файле work.php делаю проверку и выдаю html-страницу
Загрузить источник  GeSHi: PHP
  1. if (isset($_GET['_escaped_fragment_']) && isnum($_GET['_escaped_fragment_']) && array_key_exists($_GET['_escaped_fragment_'], $result)){
  2. // здесь выдаю страницу
  3. } else { die("Access denied"); }
Добавлено за 0.024 секунд, используя GeSHi 1.0.8.10

Функцию isnum() взял из фьюжн, она мне нрaнравится:-) Все работает, вопрос в другом: если у пользователя отключен js, то он, кликнув на ссылку, попадает по адресу app/work.php#!1, и, соответственно, видит Access denied. Вопрос: принципиально ли это, и если да- что с этим делать?
Изменил(а) Pisatel, 19.10.2014 05:54
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Polarfox
Если сает выпилилят или понизят за подмену смтраниц - не удивляйся.
Это если вообще эта штука будет работать, конечно.

Я не понимаю зачем ты блочишь страницы вообще, вообщем я уже сказал как нужно делать, дальше думай.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Zaxap
Точно не знаю, что Вы хотите сделать именно...
Но, как по-мне, можно сделать все по типу href="#" (href="#1", если нужен номер (ну или даже так: href="#app/work.php?_escaped_fragment_=1" / так: href="javascript:;"), можно также добавить onclick="func();" при надобности (все зависит от реализации), можно отправлять запрос к php-скрипту через js (думаю, Вы поняли)...
Таким образом, если пользователь перейдет по данной ссылке (по любой из них, ибо #), то не увидит Access Denied.
Навряд ли я ошибаюсь, хоть и не знаю всех тонкостей сего.
Зло не дремлет, а я добрый...
 
Pisatel
PolarFox, вообще, я это и сделал для пс, чтобы они имели доступ к контенту. Бот должен сам заменить #!1 на _escaped_fragment_=1.
Zaxap, пост 1, там ссылка. Знак восклицания дает понять боту, что это контент ajax.
Короче, я ничего не понимаю. Вообще, делал не под пс изначально, а для людей. Просто в подгружаемом контенте- уникальный текст, вот и хотел скормить его пауку.
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Polarfox
Я не уверен что все поисковики поймут, я не такой рисковый.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Pisatel
PolarFox, короче, я оставил им обычную ссылку на html-страницу, пусть индексируют. А для тех, кто с жабой- e.preventDefault(); и подгрузка по mouseenter

Объединено 22.10.2014 07:17:
Появился еще один маленький вопрос, не буду создавать тему, спрошу здесь. Суть такова: на сайте сделал небольшую форму обратной связи на ajax, вопрос в том, что при нажатии на submit кидает в верх страницы, хотя у form отсутствует атрибут action. Пока решил проблему так:
Скачать исходники  Код
<a id="myform"></a>
<form action="#myform">



Но может можно это решить через жабу?
Изменил(а) Pisatel, 22.10.2014 04:17
Переполз на WP, но PF - это как первая любовь, которая не забывается...
x1
 
Web
Polarfox
превент дефаулт или ретурн фалсе, я не знаю как у тебя но скорее всего идет клик по пустому/нуль якорю, что всегда стабильно ведет на верх.
А в этом коде ничего по сути нет проясняющего...
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Pisatel
Да, я уже понял про return, только теперь думаю, куда его. Вот так выглядит мое творение
Загрузить источник  GeSHi: Javascript
  1. /* contact form */
  2.  
  3. jQuery.validator.addMethod('answercheck', function (value, element) {
  4.  
  5. return this.optional(element) || /россия$/i.test(value);
  6.  
  7. }, "введите корректный ответ");
  8.  
  9.  
  10.  
  11. // validate contact form
  12.  
  13.  
  14. $('#contact').validate({
  15.  
  16. rules: {
  17.  
  18. name: {
  19.  
  20. required: true,
  21.  
  22. minlength: 2
  23.  
  24. },
  25.  
  26. email: {
  27.  
  28. required: true,
  29.  
  30. email: true
  31.  
  32. },
  33.  
  34. phone: {
  35.  
  36. required: false,
  37.  
  38. minlength: 6,
  39. maxlength: 12
  40.  
  41. },
  42.  
  43. message: {
  44.  
  45. required: true,
  46.  
  47. minlength: 5
  48. },
  49.  
  50. answer: {
  51.  
  52. required: true,
  53.  
  54. answercheck: true
  55.  
  56. }
  57.  
  58. },
  59.  
  60. messages: {
  61.  
  62. name: {
  63.  
  64. required: "Не помните, как вас зовут?",
  65.  
  66. minlength: "Минимум 2 символа"
  67.  
  68. },
  69.  
  70. email: {
  71.  
  72. required: "Введите мыло",
  73.  
  74. email: "Введите корректный email-адрес"
  75. },
  76.  
  77. phone: {
  78.  
  79. minlength: "Минимум 6 цифр",
  80.  
  81. maxlength: "Максимум 12 цифр"
  82.  
  83. },
  84.  
  85. message: {
  86.  
  87. required: "Нет смысла посылать пустое сообщение",
  88.  
  89. minlength: "Слишком короткое сообщение"
  90.  
  91. },
  92.  
  93. answer: {
  94.  
  95. required: "Неверный ответ"
  96.  
  97. }
  98.  
  99. },
  100.  
  101. submitHandler: function(form) {
  102.  
  103. $(form).ajaxSubmit({
  104.  
  105. type:"POST",
  106.  
  107. data: $(form).serialize(),
  108.  
  109. url:"../../app/process.php",
  110.  
  111. success: function() {
  112.  
  113. $('#contact input').prop('disabled', true);
  114.  
  115. $('#contact textarea').prop('disabled', true);
  116. $('#contact').fadeTo("slow", 0.15, function() {
  117.  
  118. $(this).find('input').prop('disabled', true);
  119.  
  120. $(this).find('label').css('cursor','default');
  121.  
  122. $('#success').fadeIn();
  123.  
  124. });
  125. // появление
  126. setTimeout(function(){
  127. $('#success').fadeOut("slow", function(){
  128. $('#contact').fadeIn("slow", function(){
  129. $('#contact').find('label').css('cursor','pointer');
  130. $('#contact').find('input').removeProp('disabled');
  131. $('#contact textarea').removeProp('disabled');
  132. $('#contact').clearForm();
  133. }).css('opacity', '1.0');
  134. });
  135. }, 15000);
  136. // конец появления
  137. },
  138.  
  139. error: function() {
  140.  
  141. $('#contact input').prop('disabled', true);
  142.  
  143. $('#contact textarea').prop('disabled', true);
  144. $('#contact').fadeTo("slow", 0.15, function() {
  145.  
  146. $('#error').fadeIn();
  147.  
  148. });
  149.  
  150. // появление
  151. setTimeout(function(){
  152. $('#error').fadeOut("slow", function(){
  153. $('#contact').fadeIn("slow", function(){
  154. $('#contact').find('label').css('cursor','pointer');
  155. $('#contact').find('input').removeProp('disabled');
  156. $('#contact textarea').removeProp('disabled');
  157. $('#contact').clearForm();
  158. }).css('opacity', '1.0');
  159. });
  160. }, 15000);
  161. // конец появления
  162. }
  163.  
  164. });
  165.  
  166. return false;
  167. }
  168.  
  169. });
Добавлено за 0.006 секунд, используя GeSHi 1.0.8.10


Объединено 22.10.2014 18:19:
Прикол теперь в том, что страница вверх не скачет, однако заметил, что отправка происходит не со всех браузеров... Башку уже сломал.
Изменил(а) Pisatel, 22.10.2014 15:19
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web
Zaxap
Pisatel, что сказать... значит, решение не кроссбраузерное ab
Зло не дремлет, а я добрый...
 
Pisatel
Zaxap написал:

Pisatel, что сказать... значит, решение не кроссбраузерное ab

Слово красивое, мне тоже нравится, однако это никак не решает проблему:-) Думаю, что ajaxSubmit нужно попробовать заменить на банальное $.ajax
Переполз на WP, но PF - это как первая любовь, которая не забывается...
 
Web

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Темы Форум Ответов / Просмотров Последние сообщения
SharkBoss - партнёрская программа для монетизации ЛЮБЫХ видов трафика (включая спам).  →  Реклама на портале 0 / 537 28.03.2024 07:49
в PHP 7.4 нельзя вставлять пустое значение в `id` как раньше  →  Пожелания и предложения 4 / 1076 19.12.2023 03:32
Proxy5 - Отличные IPv4 прокси для любых задач (Бесплатный тест)  →  Платные услуги 0 / 1486 31.10.2023 09:47
нужны ли на сайте "Закладки" и "История посещений", как в браузере?  →  Пожелания и предложения 4 / 841 11.08.2023 15:56
Где взять список районов по областям для разных стран?  →  Пожелания и предложения 0 / 1538 10.08.2023 12:44
От какой CMS лучше переделывать плагины сервисов оплаты, доставки, 1С для PHP-Fusion-7?  →  Пожелания и предложения 2 / 1592 08.08.2023 08:59
Посоветуйте плагины для назначения прав админов и групп пользователей  →  Пожелания и предложения 0 / 3154 06.06.2022 11:52
Бот для поиска чужих файлов на Dropmefiles.com  →  Реклама на портале 1 / 942 11.03.2022 05:28
Zinsta - Программа для раскрутки и продвижения instagram  →  Флуд 12 / 6947 15.01.2022 10:47
Версия для слабовидящих Button visually impaired  →  Javascript, ajax, jquery 1 / 1847 04.01.2022 10:44
Топ 5 пользователей форума
Zaxap Zaxap (1,090)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)   SchreiBear SchreiBear (625)