2010-03-15 6 views
0

J'ai besoin de générer la liste de lecture de façon dynamique. Quelle est la meilleure façon d'extraire la playlist de sorte que la playlist json ci-dessous soit séparée en une méthode ou une variable différente.Comment charger json dans une méthode séparée

Mypage.foo
  <script type='text/javascript'>  
       var videoid = '1413'; 
       var videoUrl = 'myflv.flv'; 
      </script> 
## /scripts/flowplayer/init.js
$f(videoid, "/swf/flowplayer-3.1.5.swf", { 

    playlist: [ 
     { 
      url: videoUrl 
     }, 
     { 
      url: '59483.flv', 
      title: 'Palm trees and the sun' 
     }, 
     { 
      url: '58192.flv', 
      title: 'Happy feet in a car' 
     }, 
     { 
      url: '63617.flv', 
      title: 'People jogging' 
     } 
    ], 
    wmode: 'opaque', 
    plugins: { 
     gatracker: { 
      url: "/swf/flowplayer.analytics-3.1.5.swf", 
      trackingMode: "Bridge", 
      debug: false 
     } 
    } 
}); 

Répondre

1

Je pense que vous voulez quelque chose comme ceci:

var list1 = getPlayList(); 

    $f(videoid, "../flowplayer-3.1.5.swf", { 
     playlist: list1, 
     wmode: 'opaque' 
    }); 

... où getPlayList() renvoie un tableau formaté la façon dont vous avez besoin:

function getPlayList() { 
     return [ 
     { 
      title: 'scooter race', 
      url: 'http://www.mediacollege.com/video-gallery/testclips/20051210-w50s.flv' 
     }, 
     { 
      title: 'Promo', 
      url: 'http://e1h13.simplecdn.net/flowplayer/flowplayer.flv' 
     } 
     ]; 
    } 
+0

Comment est-ce différent de ce que je posté? – Jeremy

+0

ce n'est pas matériellement différent, Jer, mais je l'ai posté comme vous étiez en train de poster le vôtre. – Cheeso

1

Extrayez-le:

var f=function(param1,param2,...){ 
    return [ 
    // dynamic playlist data 
    ]; 
} 

Ensuite, appelez-le:

$f(videoid, "/swf/flowplayer-3.1.5.swf", { 
    playlist: function(){ 
    return f(param1,param2,...); 
    } 
});