희망 누군가를 다시로드이에 좋은 답이있다 바운드 이벤트를 트리거? 새로운 페이지가로드 될 때 어떤 일이 발생했는지,로드되기 전에 어떤 일이 발생하는지에 대해서는 말하지 않습니다. 다음 코드를 참조하십시오.페이지를 다시로드 불필요 직전 페이지
<form name="form1" method="post" action="tmp.aspx?a=1" id="form1">
<script type="text/javascript">
$(document).ready(function() { console.log('document/ready' + new Date()); });
$(window).load(function() { console.log('window/load' + new Date()); });
</script>
<a href="tmp.aspx?a=1">tmp</a>
</form>
페이지를 처음 방문하면 문서/준비 중 하나와 창 /로드 중 하나에 대한 두 개의 출력이 콘솔에 표시됩니다. 2 페이지를 새로 고침하면 더 빨리 출력되고, 그 다음 2 페이지가 새로 추가됩니다 (새 페이지보기에서). 만약 내가 대신 같은 페이지로 직접가는 링크 (tmp.aspx)를 클릭하면, 이것은 발생하지 않습니다.
나는 이것에 대한 좋은 설명이있을 것이라고 확신한다.
감사합니다.
EDIT : $ (document) .ready() 및 $ (window) .load()에 대한 추가 호출은 해당 페이지가 새로 고쳐지기 전에 수행됩니다. 그래서 처음 페이지를로드 할 때 메서드를 한 번 호출 한 다음 새로 고침을 클릭하고 페이지가 다시로드 된 메서드가 다시 호출됩니다. 그 후, 페이지가 다시로드되었을 때 메소드는 제 3의 시간이라고합니다.
iframe입니까? coz 나는 같은 행동을 발견했지만 facebook의 – Achshar
같은 위젯에 대해서도 변수를 없애기 위해 jquery없이 이것을 시도 할 수 있을까요? 어쩌면 jquery 그것으로 복잡합니다. 순수한 자바 스크립트에서 본문에 대한 이벤트 수신기를 추가하십시오. 문제 영역을 좁혀 야합니다. – Achshar
나는이 문제를 너무 가지고있다 - 그래서 성가신. 또한 해시 변경 이벤트로 인해 document.ready가 불필요하게 실행됩니다. – asgeo1