2010-07-06 4 views
2

div에 jquery .load()를 통해 일부 내용 (HTML 헤더 또는 기타가 아닌 PHP에서 HTML 형식의 내용)이로드됩니다.jQuery .load가 swfobject 내용을로드하지 않습니다.

swfObject를 사용하여 amCharts PHP로 동적으로로드 된 일부 플래시 기반 amChart (www.amcharts.com)는 완벽하게 작동합니다. 별도로로드 된 파일은 Flash 차트를 작동하고로드합니다. .load()를 사용하여로드 될 때 파일이로드 된 것처럼 보이지만 스크립트가 실행되지 않고 swfObject가 제정되지 않습니다.

지금, 나는

그래서, 주요 부모의 헤더에 탐색 클릭이로드 될 때까지 듣고 코드입니다 ... 그래서 병이 그냥 주위에 물건을주고, 여기 당신을 줄 어떤 코드를 잘 모르겠어요 내용 (우리의 amcharts) : -

  $('a.leftNav').click(function() { 
      page = $(this).attr('page'); 
      metID = $(this).attr('metID'); 

      if($("#mainRight").is(":visible")) { $('#mainRight').hide(200); } 

      switch(page) { 

      case 'metrics': $("#mainRight").load("content.php?load=mets", { metID: '5000227' }); break; 

      } 
      $('#mainRight').show(300); 

     }); 

그래서 그게 작동합니다. 올바른 페이지를로드하고 content.php? load = mets 페이지로 이동하여 입증 된대로 PHP를 실행합니다. 는 PHP에 의해 생성 된 해당 페이지의 코드는 다음과 같습니다 -

<div class="amChart" id="chart_views_div"> 
차트로드 ...

내가 아는 교환 swfObject 코드는, (내가 텍스트 파일로 출력 한되어야한다

생성 된 PHP의 코드)가 작동 중입니다.

로드 된 swfObject와 JS는 일반적으로 어떻게됩니까?

답변

1

jquery .load()이 완료되면 swfObject를 초기화하는 함수를 호출해야합니다. swfObject가 보통 window.load에서 초기화 될 것이라고 생각합니다. 이 같은

뭔가 :

$("#mainRight").load("content.php?load=mets", function() { 
    // initialise swfObject here e.g. 
    swfobject.embedSWF("myContent.swf", "chart_views_div", "300", "120", "9.0.0"); 
}); 
+0

오른쪽에 관한 소리. 하지만, swfObject를 초기화하는 함수는 어떻게 생겼습니까? 나는별로 재미가 없다. – waxical

+0

는 위 예를 더했습니다 – robjmills

+0

고맙습니다. 불행히도, 나는 자신의 방식으로 swfobject의 특정 버전을로드하는 amCharts PHP를 사용하고 있습니다. 그래서 나는 망했다. swfObject가로드되었는지 확인하는 이벤트처럼로드 된 상태에서이 페이지에서 실행할 수있는 것입니까? 현재이 .load()는 content.php를로드하고있는 부모 docu에 있습니다. – waxical

0

이 차트 을 오전 여전히 swfobject 1.5

Swfobject 2.x에서 훨씬 더 이럴 amcharts 새 버전을 사용하도록 업데이트해야합니다 사용합니다.

2.x는이 경우 사용해야합니다.

관련 문제