저는 div의 'footer'를 페이지 하단에두고 페이지 변경을 통해 열어 둡니다. 필자는 JQuery의 .load 함수를 메인 콘텐츠 div에 사용하여이 방법을 사용했지만, 다른 페이지로 이동하면 URL은 그대로 유지됩니다. 링크가 URL을 변경하지 않고 div를 열린 상태로 유지할 수있는 방법이 있습니까? 나는 div를 통해 음악을 재생할 계획이므로 페이지 스위치 사이를 닫을 수 없거나 음악이 멈추거나 다시 버퍼해야합니다.div를 페이지 변경으로 열어 두시겠습니까?
답변
는 다음을 사용하여 HTML5로이 작업을 수행 할 수 있습니다
window.history.pushState(obj, "Title", url);
당신의 .load()
전화 후.
표시되는 URL이 통화중인 주소와 일치하도록 변경되지만 동일한 도메인에 속한 URL 만 허용됩니다.
는 비 HTML5 브라우저를 지원하려면 https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history
당신은 프레임과 해시 URL을 사용해야합니다 참조하십시오. 나는 구식의 프레임 셋을 사용할 것이다. (나는 실제로 프레임 셋을 제안하고 있다고 믿을 수 없다. 그것은 나쁜 습관으로 간주되며, 아마도 11 년 후에 이런 코드를 작성하지는 못했지만,이 경우에는 실제로 올바른 솔루션처럼 보인다. iframe을 사용할 수있다. 하지만 나는 프레임이 실제로 더 의미가 생각하는)
<frameset border="0" rows="*,100">
<frame src="/mainPage" id="content" />
<frame src="/footer" id="footer" />
</frameset>
사용 Ben Alman의 hashchange plugin,이 같은 스크립트를 사용하여 페이지 탐색 관리 :.
$(function() {
$("frame").load(function() {
document.title = w.document.title;
var links = $("a[href]", this.contentWindow.document);
links.attr("target", "_top");
links.click(function (e) {
if (this.hostname == location.hostname) {
e.preventDefault();
var path = this.pathname.replace(/^[^\/]/, "$&/");
location.hash = "#" + path + this.search + this.hash;
}
});
});
var w = $("#content")[0].contentWindow;
$(window).hashchange(function() {
var hash = location.hash.substr(1) || "/mainPage";
var contentLoc = w.location.pathname + w.location.search + w.location.hash;
if (hash.toLowerCase() != contentLoc.toLowerCase()) {
w.location.replace(hash);
}
}).trigger("hashchange");
});
데모 : http://jumpingfishes.com/framed/
을n 프레임 대신, AJAX를 사용하여 컨텐트를 다시로드 할 수 있지만 프레임을 더 빨리 구현할 수 있습니다.
+1 Sweet example gilly3! (btw, 그건 플러그인이 무엇인지, 맞지?! :) –
- 1. 페이지 새로 고침 후 slideToggle() div를 열어 두시겠습니까?
- 2. 파이프를 읽지 않고 열어 두시겠습니까?
- 3. 페이지 탐색에 div를 열어 두십시오.
- 4. 여러 통화를 허용하려면 PHP로 셸을 열어 두시겠습니까?
- 5. location.reload()에서 원래 div를 열어 두십시오.
- 6. 컬렉션 클래스는 어디에 두시겠습니까?
- 7. NSStatusItem을 항상 남겨 두시겠습니까?
- 8. 많은 요청을 반복 할 수 있도록 Sql Connection을 열어 두시겠습니까? 또는 각 단계를 닫으시겠습니까?
- 9. 트리거를 통해 div를 열고 열어 둔 div에 마우스가 열려있는 한 열어 두십시오.
- 10. URL에 앵커를 통해 토글 된 div를 계속 열어 두십시오.
- 11. 페이지를 탐색하는 동안 클릭 한 후에 Div를 열어 두는 방법
- 12. 한 번에 하나만 열어 클릭 할 때 div를 확장하려면 어떻게해야합니까?
- 13. 별도의 div 위에 마우스를 올려 놓고 div를 다시 열어 두십시오.
- 14. 페이지 중앙에 div를 정렬하는 방법
- 15. div를 페이지 맨 아래로 내림
- 16. DIV를 페이지 중심의 초점으로 만들기
- 17. div를 페이지 상단으로 잠그는 방법
- 18. div를 숨겨서 페이지 본문을 클릭하면
- 19. CSS div를 페이지 아래쪽에 유지
- 20. jQuery 토글을 열어 두지 않고
- 21. 비공개 방법에 대한 단위 테스트는 어디에 두시겠습니까?
- 22. 페이지 재로드가 RoR에서 div를 지정하게하려면 어떻게해야합니까?
- 23. ASP.net에서 페이지의 마스터 페이지 Div를 얻는 방법?
- 24. 페이지 상단으로 div를 플러시 할 수 없습니다.
- 25. 전체 div를 페이지 중앙으로 옮길 수 없습니다.
- 26. div를 페이지 뷰로 들어오고 나가는 모습을 simutaniously
- 27. 스크롤하면서 div를 붙잡고 페이지 하단에 숨기는 방법
- 28. div를 CSS로 페이지 너비로 확장하려면 어떻게해야합니까?
- 29. jQuery에는 div를 페이지 매김하는 플러그인이 있습니까?
- 30. CSS 도움말, 기본적으로 div를 페이지 길이로 설정합니다.
저에게 어떤 이유로 든 일하고 싶지 않습니다. 대부분의 호환성 문제. 내 코드를 올리려고했지만 여기 새로 왔기 때문에 제대로 포맷 할 수없는 것 같습니다. – Henzl0l
코드 앞에 공백 4 개를 넣거나 붙이면 선택한 다음 {} 버튼을 누르십시오. – Alnitak