2014-03-12 2 views
-1

여기에 preventDefault 메서드가있는 하이퍼 링크 처리기가 있습니다. 새 탭에서 링크를 열고 jQuery .load() 메소드로 특정 컨텐츠를로드하려고합니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 다음은 하이퍼 링크 처리기의 코드와 콘텐츠를로드하는 방법입니다.preventDefault 및 jQuery로드가있는 새 탭

$("a").click(function(event){ 
    event.preventDefault(); 
    if ($(this).attr("target")=="_blank"){ 
     // open at new tab and make some actions 
    } 
    else { 
     //some actions 
    } 
}); 

$(".loadedContent").click(function(){ 
    $(".content").load("loadedContent.html"); 
}); 
+1

일부 코드를 볼 필요가 있거나 답변이 의견을 기반으로합니다. – Rex

+0

지금 몇 가지 코드를 추가했습니다. 충분히? –

답변

1

새 탭에서 링크를 열 수 있지만 jQuery를 사용하여 해당 페이지에 액세스 할 수 없습니다. jQuery .load() 코드가있는 URL을로드해야합니다. 예 :

그런 다음 새 탭에서 메소드가있는 페이지를로드 할 수 있습니다. 좋아요 :

<html> 
    <body> 
    <script> 
     $(document).ready(function() { 
     $('div').load('the_new_url.html'); 
     }); // do remember to add the jquery file to the HTML document. 
    </script> 
    <div></div> <!--You'll find the new content in the DIV--> 
    </body> 
</html> 

매우 지저분 할 것입니다.

.load() 메서드를 사용하려면 동일한 페이지에서이 메서드를 사용하고, 새 콘텐츠를로드하고, 가져 오는 콘텐츠로 기존 콘텐츠를 바꾸는 것이 좋습니다. 이러한 팝업은 사용자를 괴롭 히다! 대답 언급 한 Rex 대답은 의견을 기반으로하므로 내 의견은 새 탭 대신 같은 페이지에있는 메서드를 사용합니다!

나인 경우 위의 코드를 사용하여 콘텐츠를 DOM로드 이벤트에 채 웁니다. 각 요소를 클릭 할 때마다 요소 및 이벤트에 따라 내용이 업데이트되었습니다.

+0

괜찮습니다. window.open에 대한 정보를 찾았지만 새로운 페이지가 어떤 페이지를로드하는지 이해할 수 있습니까? 특정 콘텐츠를로드하려면 새 탭을 만들어야합니다. –

+0

첫 번째 매개 변수에 제공 할 페이지를로드합니다.'window.open ('http://www.google.com');'그러면 Google 웹 사이트가 열립니다! –