2014-02-07 3 views
0

내 웹 사이트에 Sammy.js를 사용하고 있으며 웹 사이트의 페이지로 연결되는 링크를 이메일로 보내려고합니다. 나는 이런 식으로 링크를 설정 한 :Sammy.js 웹 사이트의 페이지로 연결

this.get('#/', function(context) { 
    $("#main").load("sections/home.html"); 
}); 

this.get('#/:page', function(context) { 
    $("#main").load("sections/" + this.params['page'] + ".html"); 
}); 

첫 번째는 당신이 내 웹 사이트에 입력 할 때 있도록, 먼저 home.html을 섹션으로 이동하고 나는 그것을 밖으로 가지고가는 경우에, 나는에 때를 이동 기본값 내 웹 사이트, 아무 것도로드되지 않습니다 #main. 이제 내 URL 표시 줄 mywebsite.com/#/contact을 입력하면 mywebsite.com/#/이로드됩니다. 즉, 홈 페이지로 곧바로 이동합니다.

내가 먼저 홈페이지로 가서 mywebsite.com/#/을 방문한 다음 원하는 페이지로 URL을 수정하면 작동 할 것이라고합니다. 페이지를 다시로드하기 위해 입력을 누르거나 다시 수정하려고하면 홈페이지로 돌아갑니다. 도와주세요.

+0

또한 약간의 AJAX jQuery를 나중에 사용하고 있는데 방해가 될 수 있습니다. 나는 어쨌든 그 전에 문제가 있다고 생각했지만. – ArtlyticalMedia

+0

$ (document) .ready()에 라우팅 및 호출 실행 ('# /')을 정의 하시겠습니까? – rivarolle

+0

main.js 코드를 다음과 같이 시작합니다. 'Sammy ('# main', function() { $ ("# header")) load ("templates/header.html"); $ ("# nav- bar ") load ("templates/nav-bar.html "); $ ("# footer "). load ("templates/footer.html "); ' 위의 코드는 다음과 같이 끝납니다 : '}). run();' – ArtlyticalMedia

답변

0

document.ready에 포장 시도하고 기본 경로 실행 -이 같은 :

$(document).ready(function() { 

    Sammy('#main', function() { 
      $("#header").load("templates/header.html"); 
      $("#nav-bar").load("templates/nav-bar.html"); 
      $("#footer").load("templates/footer.html"); 

      this.get('#/', function(context) { 
       $("#main").load("sections/home.html"); 
      }); 

      this.get('#/:page', function(context) { 
       $("#main").load("sections/" + this.params['page'] + ".html"); 
      }); 

    }).run('#/'); 

}) 

내 말에 작동하는 것 같다.

+0

안녕하세요. 나는 그것을 시도했지만 주소 표시 줄에 페이지를 입력 할 수 없으며 올바른 페이지를로드 할 수 있습니까? 다르게 수행 할 수있는 사항이 있습니까? – ArtlyticalMedia

관련 문제