Привет я хотел бы, чтобы навигация на моем веб-сайте постепенно появилась при посещении моего веб-сайта и осталась существующей (т.е. не постепенно появилась снова) при посещении других страниц сайта.
Был бы лучший способ достигнуть этого, чтобы должным быть сказать jQuery игнорировать исчезновение в действительности при посещении из того же домена? Раз так кто-то может сказать мне, как я записал бы это?
Большое спасибо, Gavin
Простой способ сделать это без куки-файлов - использовать свойство document.referrer.
if ( document.referrer == null || document.referrer.indexOf(window.location.hostname) < 0 ) {
// Your code here
}
По сути, мы просто проверяем, не была ли страница, на которой ранее находился пользователь, пустой (они открыли новое окно браузера) или не находилась на том же домене, что и текущая страница.
.Единственный способ узнать, был ли это первый доступ пользователя - наличие файла cookie, установленного на вашем сайте.
Это явно ненадежно, поскольку пользователь мог отключить или удалить файлы cookie.
Ваш файл cookie будет извлечен в коде на стороне сервера, а затем записывается в (например) скрытую переменную HTML, доступную из JavaScript / JQuery.
Специфика кода сервера зависит от языка вашего сервера.
Вы не можете гарантировать, что у пользователя будут включены cookie-файлы, чтобы это решение работало. Вам нужно будет сначала добавить проверку, включены ли cookie-файлы, перед внедрением решения. Вы можете проверить, включены ли куки-файлы с помощью метода, подобного этому.
var cookieName = 'yourcookiename';
$(function() {
checkCookie();
});
function checkCookie() {
if (document.cookie.length > 0 && document.cookie.indexOf(cookieName + '=') != -1) {
// do nothing, cookie already sent
} else {
// handle jQuery animation
// set the cookie to show user has already visited
document.cookie = cookieName + "=1";
}
}
Можно использовать куки. Смотрите: http://plugins.jquery.com/project/Cookie