http://www.site.ru/#screenshots вставляя в браузер оказываюсь на главной странице(
http://www.site.ru/#screenshots вставляя в браузер оказываюсь на главной странице(
Находясь на сайте, кликаю на пункт меню и попадаю туда, но если указать линк другому человеку он попадает на главную страницу, ребята, как решить данную проблему?:( |
ребята,технари,помогите блин,я по молюсь за вас!
|
Телепатия не абсолютна. Можно понять что сайт у вас на ajax и контент подгружается динамически без перехода.
Есть несколько вариантов решения проблемы с передачей ссылки. 1. mod rewrite на сервере. 2. просто переадресация на сервере. 3. работа с history на клиенте и двойная компановка вывода на сервере.(самый нормальный) 4. перехват location.hash на клиенте и подгрузка соответствующего контента. 5. ... 6. Profit! Но что там у вас конкретно увы телепатия не говорит. |
Код навигации по странице -
// Main Navigation var FluidNav = { init: function() { $("a[href*=#]").click(function(e) { e.preventDefault(); if($(this).attr("href").split("#")[1]) { FluidNav.goTo($(this).attr("href").split("#")[1]); } }); this.goTo("home"); }, goTo: function(page) { var next_page = $("#"+page); var nav_item = $('nav ul li a[href=#'+page+']') $("nav ul li").removeClass("current"); nav_item.parent().addClass("current"); FluidNav.resizePage((next_page.height() + 40), true, function() { $(".page").removeClass("current"); next_page.addClass("current"); }); $(".page").fadeOut(500); next_page.fadeIn(500); FluidNav.centerArrow(nav_item); }, centerArrow: function(nav_item, animate) { var left_margin = (nav_item.parent().position().left + nav_item.parent().width()) + 24 - (nav_item.parent().width() / 2); if(animate != false) { $("nav .arrow").animate({ left: left_margin - 8 }, 500, function() { $(this).show(); }); } else { $("nav .arrow").css({ left: left_margin - 8 }); } }, resizePage: function(size, animate, callback) { if(size) { var new_size = size; } else { var new_size = $(".page.current").height() + 40; } if(!callback) { callback = function(){}; } if(animate) { $("#pages").animate({ height: new_size }, 400, function() { callback.call(); }); } else { $("#pages").css({ height: new_size }); } } }; полагаю, тут нужно что-то изменить , для того чтобы входящие ссылки работали. |
this.goTo("home") -> this.goTo(location.hash.replace('#', '') || "home")
|
дружище, напиши свой номер телефона, я тебе денег кину
williamrast@mail.ru |
только теперь у меня почему-то не открывается ссылка типа -
http://www.apple71.com/#mmp=ViewProductPage&mmpid=8164 весь js встает( остальные вкладки работают. |
this.goTo(location.hash.replace('#', '').split('&')[0] || "home")
|
Можно еще так сделать:
if (location.hash){ $('a').each(function(){ if (this.href.replace(location.origin, '') == location.href.replace(location.origin, '')) { $(this).click(); return false;} }); } |
Цитата:
|
Часовой пояс GMT +3, время: 03:46. |