developing.name Решение проблем разработки сайтов. uncat php javascript jquery ajax html other C#

Ajax и поисковые боты

04.12.2008, 23:58
Рубрика: ajax

Ajax очень интересен, особенно в jquery. При разработке некоего сайта, нам нужно было использовать jquery и ajax в полной степени, но при этом не забывая о поисковых ботах, и о пользователях у которых отключен javascript.

Почему статья в разделе ajax? Как-то он ближе показался. Но суть вопроса не в этом. А в том, как было реализован сей код, с данными требованиями. Все очень просто (для тех, кто хоть как-то работал с jquery):

$(document).bind("ready", function() {
    function gogo()
    {
        function onAjaxSuccess(data)
        {
            $("div[id=content]").html(data);
            $("a").bind('click', gogo);
        }
        $.post(
                $(this).attr("href"),{type: Math.random()},onAjaxSuccess
               );
        return false;
    }
    $("a").bind('click', gogo);
}

Код очень прост. Отдельная функция gogo(), которая биндиться (bind) на <a> и после ajax-запроса gogo() ребиндиться (re-bind) на все ссылки. К вопросу о ребиндах, очень уж нужно это делать, не забывайте про это. Иначе, если в загруженном контенте будут ссылки, jquery не сможет перехватить управление на себя.

В html все еще проще:

<a href=”/test/”>TEST</a>
<div id=”content”></div>

С виду обычный код, но, при нажатии на ссылку, начинает работать gogo(), в нем срабатывает post ajax запрос, который вставляет в <div> ответ от сервера. И самое главное в функции, ложный возврат (return false), который как раз не дает браузеру переходить по ссылке. Мы и получаем обычный код, валидный для поисковиков, но со всеми прелестями ajax’а.

Не забываем так же, о важной переменной, которая передается серверу при ajax запросах: XMLHttpRequest. С ее помощью, скрипту дается понять, загружать весь html или его нужную часть.

if (@$_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')
{
    echo $content;
} else {
    echo $htmltop.$content.$htmlbottom;
}

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

Ссылки по теме:

  • 04.12.2008 - Ajax и поисковые боты
  •  

    Комментарии

    Нет

     

    Имя*:
    e-mail*:
    URL:
    captcha*
    Текст*:
    • ajax и поисковики
    • AJAX поисковики
    • jquery и поисковики
    • поисковые боты
    • поисковики и AJAX
    • ajax Поисковые подсказки
    • jquery перехват событий
    • jquery перехват ссылки
    • ping поисковиков
    • jquery перехват ajax
    • jQuery перехватить клик по ссылке
    • jquery ping server
    • jquery перехват события
    • Поисковый бот php
    • как перехватить URL в C#
    • Коды,поисковые боты
    • bots and ajax
    • jquery перехват клика по ссылке
    • возврат данных ajax
    • поисковик и ajax
    • перехват ajax
    • jquery перехват ссылок
    • ajax для поисковиков
    • перехват url
    • перехват ссылок jquery
    • поисковики ajax
    • jquery перехват клика на ссылку
    • jquery перехват нажатия по ссылке
    • БОТ ПОИСКОВИК
    • бот на ajax
    • перехват нажатия на ссылку
    • posting
    • XmlHttpRequest
    • ajax ссылки href
    • jQUery перехватить клик
    • jquery перхватить сслыку
    • как перехватить post запрос
    • как перехватить событие jquery
    • Поисковые подсказки на AJAX
    • поисковый бот ajax
    • поисковые боты ajax
    • jquery ajax возврат данных сервером
    • как перехватить все ajax запросы
    • фофч и поисковики
    • поисковый ajax запрос
    • боты gogo
    • перехват событий jquery
    • поисковый бот код
    • бот поисковиков код для сайта
    • перезват кликов

    jQuery plugins:
    • pro.scroll - графический скролл для div
    • pro.tips - всплывающие подсказки
    Powered by PRO