2009-06-26 6 views
0

저는 클라이언트가 기존 페이지를 한 페이지에 동적으로로드하고자하는 프로젝트를 진행하고 있습니다. 문제는 없지만 페이지가 기존 사이트의 독립 실행 형 파일로로드 될 때와 같이 스타일이 작동하지 않습니다. 각 페이지에서 CSS 링크를 추출하여 뷰어 페이지에 동적으로 적용시키는 방법이 있습니까? 어쩌면 그 ISN 내가 좋아하는 것 css가 그대로 외부 파일을로드 중입니까?

$(function() { 
$('a.dock-item2').click(function() { // click on an anchor with the dock-item2 class 
    $("#page").remove();    // remove what's in the viewer already 
    var href = $(this).attr('href'); // grab the external file path and name 
    $('<div id="page" />').load(href, function() { // create a new div and load 
                 // the page content 
    $(this).hide()    // just stuff to make a nice transition... 
    .appendTo('#viewer') 
    .fadeIn(1000); 
    });     
return false; 
})}); 

문제의 사업부에 엄격하게 적용하기 :하지만 ... 여기

내가 보는 페이지에 외부 페이지를 호출 할 썼습니다 기능의 사본입니다 할 수있는 최선의 일. 대신이 물건을 iframe에로드하는 것을 고려해야합니까? 어쩌면 금요일 일 뿐이며 이성적으로는 더 이상 생각할 수 없습니다 ...

도움/조언을 미리 주셔서 감사합니다 !!

답변

0

jQuery의 ajax 기능을 사용하면 원격 페이지에서 본문 태그 (본문에 존재하지 않는 태그)를 가져 오는 것이 어렵거나 불가능합니다. 즉, 이런 경우라면 PHP 스크립트를 로컬로 설정하여 중간 사람으로 행동 할 수 있습니다. 그것은 페이지의 내용을 읽고, css 파일을 찾은 다음 그 파일을 반환하거나 css 파일 자체의 내용을 반환 할 수 있습니다. 그러면 페이지에 동적으로 배치 할 수 있습니다. phpQuery와 비슷한 내용의 <script> 태그 또는 PHPSimpleHTMLDOMParser를 잡기 위해 phpQuery와 같은 것을 사용하는 경우 특히 그렇습니다.

가상의 모든 것이지만 작동 할 수 있습니다.) 물론 iframe을로드하고 싶다면 그렇게 할 수 있습니다. 이렇게하면 모든 링크가 iframe 내에서 작동 할 수 있습니다.

+0

나는 PHP가 더 나은 해결책일지도 모른다고 생각했지만 js 해결 방법이 있는지 확인하려고했습니다. Meh, 큰 거래가 아니라. .. 내가 지루할 때 나는이 주말에 일할 무엇인가 준다! 도와 주셔서 감사합니다!! –

+0

이 이전 답변도 확인하십시오. http://stackoverflow.com/questions/1050333/jquery-ajax-parse-response-text/1050344#1050344 – Sampson

+0

링크를 제공해 주셔서 감사합니다. 나는 RTFM에 정말로 도움이되고 어리석은 질문을하지 않는다고 생각합니다. ;) –

0

JavaScript를 사용하지 않습니다. 어쩌면 PHP에서 fopen fwrite 함수를 사용하여,하지만 나는 확실히 많은 오버 헤드가 있다고 생각합니다.

관련 문제