2013-05-21 3 views
1

여기에 Wierd가 있습니다 ...JQM ajax 페이지를 여러 번 다시로드

저는 애플리케이션을 설정 중이며 ajax 메서드를 통해 다른 페이지에로드하고 있습니다. 이 페이지들 사이에는 간단한 전진/후진 방법이 있습니다.

다시 메서드를 실행하면 콘솔 로그가 배치되고 처음 클릭하면 그 페이지로 다시 돌아가서 다시 클릭하면 한 번 표시됩니다. 그런 다음 두 개를 보여줍니다.

이렇게하면 페이지를 새로 고치는 데 문제가 있습니다. (뒤로 클릭하면 방금 클릭 한 페이지에서 전환됩니다.)

data-rel = "back"또는 changePage 메서드를 사용하면 문제가 동일합니다.

나는 Google을 가졌으며 아무 것도 찾을 수 없었습니다.

도움을 주시면 감사하겠습니다.

답변

1

문제점은 다중 이벤트 바인딩에서 비롯됩니다. 코드를 제공하지 않았기 때문에 변경해야 할 특정 라인을 알 수는 없지만 다른 답변에 대한 링크를 제공 할 수 있습니다.

예를 들어 여러 솔루션을 찾을 수 있습니다. jQuery Mobile: document ready vs page events. 주제 검색 : 여러 이벤트 바인딩/트리거링 방지

경우에 따라 페이지를 다시 방문 할 때마다 일부 이벤트가 적용되었을 수 있습니다. jQuery Mobile 페이지 이벤트를 사용하고 있고 가능한 경우 가장 쉬운 해결책은 pageinit 이벤트를 사용하는 것입니다.

+0

아, 이제 이해가됩니다. 현재, 내부 스크립트를 호출하는 전역 스크립트 파일이 있습니다. 더 나은 솔루션은 무엇입니까? 각 페이지에로드 된 개별 스크립트? –

+0

각 페이지마다 개별 스크립트를 선호하지만이 솔루션을 사용하더라도 조심해야합니다. 왜 내 다른 대답을보십시오 : http://stackoverflow.com/a/15806954/1848600. 기본적으로 여러 개의 HTML 파일이 있고 각 HTML에 별도의 js 파일이 있어야 할 경우 해당 js 파일을 BODY에 배치해야합니다. – Gajotres

+0

OK 훌륭한 것 같습니다. 내 HTML 파일은 현재 data-rel = "page"이고 다른 내용은 없습니다. 잘못인가? 아니면 JS 파일 호출을 페이지 내용에 넣을 수 있습니까? –

관련 문제