2010-06-23 3 views
1

데이터를 검색 할 두 개의 XML 소스가 있습니다. 페이지 부하 당 교대로 사용하고 싶습니다. 따라서 누군가가 페이지를 방문하면 첫 번째 소스가 사용되고 다음 번에 페이지를 방문하면 다른 소스가 사용됩니다. 저는 여기에 하나의 데이터 소스를 얻기 위해 사용하고있는 아약스 요청입니다 :jQuery Ajax - 각 요청에 대한 대체 XML 소스

if(isset($_SESSION['rotation'])){ 
$picker = $_SESSION['rotation']; 
}else{ 
$picker = rand(0,1); 
} 

if($picker == 0){ 
echo '<script type="text/javascript"> 
    var video1 = new SWFObject("somefile1.swf", "p1", "151", "590", "9", "#ffffff"); 
    video1.addParam("wmode","transparent"); 
    video1.write("meh"); 
</script>'; 

$_SESSION['rotation'] = ++$picker; 
} else { 
echo '<script type="text/javascript"> 
    var video1 = new SWFObject("somefile2.swf", "p1", "151", "590", "9", "#ffffff"); 
    video1.addParam("wmode","transparent"); 
    video1.write("meh"); 
</script>'; 

$_SESSION['rotation'] = --$picker; 
} 

난 그냥 수 실현 : 추가 정보에 대한

$(document).ready(function() { 
      $.ajax({ 
       type: "GET", 
       url: "source1.xml", //how do I alternately load two different xml data sources? 
       dataType: "xml", 
       success: function(xml) { 
        var counter = 0 
        var output = '<li>'; 
        $(xml).find('person').each(function(){ 
         counter++; 
         var image = $(this).find('image').text(); 
         var name = $(this).find('name').text(); 
         var title = $(this).find('title').text(); 
         var company = $(this).find('company').text(); 

         output = output + '<div><a href="#"><img src=img/' + image + '.jpg />' + '<br /><label><span>' + name + '</span><br />' + title + '<br />' + company + '</label></a><br /></div>'; 
         if(counter % 3 === 0){ 
          output = output + '</li><li>'; 
         } 
        }); 
        output = output + '</li>'; 
        $('#update-target ul').html(output); 
       } 
      }); 
     }); 

내가 번갈아 PHP를 사용하여 2 개 플래시 파일을로드하고, 어떻게 여기에있다 jquery 문서 준비 코드를 바로 붙이면 플래시를 호출하는 js가 있지만 처리하는 데는 매우 효율적인 방법처럼 보이지 않습니다. 이 작업을 수행하는 "최상의 경우"는 무엇입니까?

답변

2

당신은 다음과 같이 짧게 유지하는 변수를 사용할 수 있습니다 if caluse에서뿐만 아니라, 그럼 그냥 참조하는지

echo '<script type="text/javascript">var xmlSource = "source1.xml";</script>'; 

사용하는 코드에서 :이

url: xmlSource, 

쿠키 (the cookie plugin)를 사용하여 document.ready 핸들러에 텍스트를 넣는 등 다른 방법이 있습니다. 내가 가장 좋아하는 것으로 보이는 부분이 있습니다.

PHP 쪽 변수 또는 쿠키의 변수를 사용하는 것이 좋습니다 ... 두 옵션 모두 document.ready 코드가 외부 스크립트에서 페이지 외부에 머 무르도록 허용하며 매번 사용자가 다운로드하지 못하게합니다.

관련 문제