2012-02-02 3 views
0

를 Explorer에 붙여 넣을 경우 내가 jQuery를이 코드있어 링크 활성 추가jQuery를 - URL이 창을

$(document).ready(function() { 

     // sprawdzanie wartości url 
     var hash = window.location.hash.substr(1); 
     var href = $('.seeker .left ul li a').each(function(){ 
      var href = $(this).attr('href'); 
      if(hash==href.substr(4,href.length-8)){ 
       var toLoad = hash+'.htp'; 
       $('#loader').load(toLoad) 
      } 
     }); 

     $('.seeker .left ul li a').click(function(){ 

     var toLoad = $(this).attr('href'); 
     $('#loader').hide('fast',loadContent); 
     $('#load').remove(); 
     $('#loader').append('<span id="load"><img src="img/loader.gif" alt="Ładuję..."</span>'); 
     $('#load').fadeIn('fast'); 
     window.location.hash = $(this).attr('href').substr(4,$(this).attr('href').length-8); 
     function loadContent() { 
      $('#loader').load(toLoad,'',showNewContent()) 
     } 
     function showNewContent() { 
      $('#loader').show('fast',hideLoader()); 
     } 
     function hideLoader() { 
      $('#load').fadeOut('fast'); 
     } 
     return false; 

     }); 

$(function() { 

//dodawanie klasy aktywnej do kliknietego linku 
    $('.seeker .left ul li a').click(function() { 
     $('.seeker .left ul li a').removeClass('active'); 
     $(this).addClass('active'); 

     return true; 
    }).filter(':first').click(); 
    }); 

}); 

및 전체 페이지를 다시로드를 클릭 활성 클래스를 추가하지 않고이 코드는 DIV의 내용을 다시로드 링크. 제 질문은 브라우저에서 링크를 복사하여 새 창에 붙여 넣으면 클래스를 활성 상태로 올바르게로드하는 법입니다.

답변

0

편집 : 내장 된 js window.location.hash를 사용하여 URL의 해시 값을 가져 와서 로직을 삭제할 수 있습니다.

// get value of hash 
var hashVal = window.location.hash; 

if (hashVal != null) 
{ 
    // add active class 
    $("'" + hashVal + "'").addClass('active'); 
    // do something else... 
} 

hashVal 해시 즉 포함하여 반환합니다 링크가 그리고 만약 "INC/sth.htp을"앵커 부르고 http://mysite.com/#sth 경우 "#hashVal"

+0

을 나는이 링크를 브라우저에 붙여 넣거나 다른 사람에게이 링크를 보낼 것이다.이 앵커에 활성 클래스를 추가하고 하위 사이트의 내용을로드하려고한다. – arclite

+0

나는 당신이 무슨 말을하는 지 이해하지 못한다. : 미안하지만, 나는 너무 슬프다. – arclite