2012-12-21 3 views
2

오디오 플레이어가 바닥 글에있는 앱을 작성하고 있습니다. 각 시간 링크를 클릭하면 전체 페이지 자체가로드되므로 오디오 플레이어가 다시 시작됩니다. 내 질문 어떻게 특정 div를 제외한 전체 페이지를 다시로드 하시겠습니까?Jquery Ajax 특정 div를 제외한 전체 페이지로드 중

답변

3

나는 그것이 불가능하다고 생각합니다. 어쩌면 당신의 접근 방식을 바꿀 수도 있습니다. 새로 고침을 원하는 특정 영역 만 새로 고침하십시오. 실제로 이러한 영역은 단일 (그리고 아마도 큰) div 태그에 포함될 수 있습니다. 그런 다음 jQuery ajax를 사용하여 해당 div를 업데이트 할 수 있습니다. 이를 위해, load 길을 가야하는 것입니다 :

편집
$('#result').load('ajax/test.html', function() { 
    alert('Load was performed.'); 
}); 

:

<script type="text/javascript"> 
    $(function(){ 
     $("#myLink").click(function(event){ 
     $("#updateThisDiv").load($this.attr('href'), function(){ 
      alert('div updated!'); 
     });    
     return false; // or event.preventDefault(); 
     }); 
    }); 
</script> 

: 여기

링크를 사용하여 더 구체적인 예입니다 (그냥 내 머리 떨어져 쓴) 귀하의 링크는 다음과 같습니다.

+0

:
이 같은이 일을 할 수 있습니까? 그게 내가 원하는 일 이니까. – user962206

+0

@ user962206 해시를 변경할 수 있지만 URL이 변경되지 않습니다 (아래 링크 참조), 그냥 궁금해서 URL을 변경해야하는 이유는 무엇입니까? : http://stackoverflow.com/questions/6478485/jquery-change- the-url-address-without-redirecting – Ulises

+0

내가 색인 페이지에 있다고 가정 해 봅시다. www.myapp.com을 방문한 다음 "events"라는 링크를 클릭하면 해당 페이지를로드 할 수 있습니다. 그래서 내 링크에서 이와 비슷한 것이 나타날 것입니다. www.myapp.com/events 또한 URL 매개 변수도 추가하고 싶습니다. www.myapp.com/events?eventId=1 또는 그와 비슷한 것입니다. 또한 즐겨 찾기를 허용하려면 – user962206

0

그래서 jQuery ajax를 사용하고있다. 전체 div를 ajax로 다시로드하더라도 오디오 객체는 그대로 유지됩니다. 따라서 객체의 도움을 받아 오디오 진행 상황을 다시 생성 할 수 있습니다.

편집 :
페이지를 새로 고침하는 중입니다.
먼저 오디오 객체의 currentTime을 세션 또는 데이터베이스에 저장하고 ajax를 사용합니다. 그리고 사용자가 오디오를로드하면 currentTime부터 시작하십시오. 내가 그 URL이 변경됩니까을 한 경우에

yourAudioObject.addEventListener(
        'timeupdate', 
        function() { 
        $.ajax ({ 
      type:'get', 
      url:'your/path/?currenttime='+yourAudioObject.currentTime, 
      ...... 
+0

예를 들어주십시오 – user962206

+0

제 편집보기 ..... – vusan

관련 문제