2011-11-21 20 views
7

पर होस्ट किए गए लिंक पर क्लिक करके जेप्लेयर पर गाने बदलना, सभी को नमस्कार और अग्रिम में किसी भी मदद के लिए धन्यवाद।अमेज़ॅन एस 3

मेरे पास रेल एप्लिकेशन पर रूबी है जिसमें मैं जेप्लेयर के माध्यम से ऑडियो स्ट्रीम करने का प्रयास कर रहा हूं, जिसे एस 3 पर होस्ट किया गया है। अब तक मुझे फ़ाइलों को अपलोड करने या ऑडियो फ़ाइलों को चलाने के लिए प्लेयर में बनाए गए ब्राउज़र का उपयोग करने में कोई समस्या नहीं है, या यहां तक ​​कि जे 3 प्लेयर को S3 पर मौजूद गीत के साथ प्रारंभ करने में भी कोई समस्या नहीं है। मुद्दा तब आता है जब मैं गाने बदलता हूं।

मैं इस तरह jPlayer प्रारंभ:

$('a.html5').click(function() { 

    var url = $(this).attr('href'); 

    $("#jquery_jplayer_1").jPlayer({ 
     ready: function (event) { 
      $(this).jPlayer("setMedia", { 
       mp3: url 
      }); 
     }, 
     swfPath: "javascripts", 
     supplied: "mp3", 
     wmode: "window" 
    }); 
    return false; 
}); 

जहां एमपी 3: S3 यूआरएल के लिए यूआरएल अंक (यह सब ठीक काम करता है)।

यह मुझे लिंक की सूची से एक गीत चुनने की अनुमति देता है, और यह लोड हो जाता है और कोई समस्या नहीं खेलना शुरू कर देता है।

समस्या यह है कि जब मैं गानों को बदलने की कोशिश करता हूं, तो मुझे एक एक्सेस-कंट्रोल-अनुमति-मूल त्रुटि मिलती है। इसलिए मैंने निम्नलिखित कोशिश की:

$('a.html5').click(function() { 

    var url = $(this).attr('href'); 

    $("#jquery_jplayer_1").jPlayer("setMedia", mp3: url).jPlayer("play"); 

    return false; 
    }); 

यह अभी भी मुझे एक एक्सेस-कंट्रोल-अनुमति-मूल त्रुटि देता है। मैं इस दीवार को समझने की कोशिश कर रहे घंटों तक दीवार के खिलाफ अपने सिर को तेज़ कर रहा हूं।

तो मूल रूप से एक सारांश यह है कि मैं जेप्लेयर शुरू कर सकता हूं और एक गाना बज सकता हूं, लेकिन जब मैं एक गीत बदलना चाहता हूं, तो एक्सेस-कंट्रोल-अनुमति-मूल त्रुटियां मेरे दिन को बर्बाद कर देती हैं।

कोई विचार?

उत्तर

8

खैर ऐसा लगता है कि केवल मुद्दा एमपी 3 के आसपास कोष्ठक का अभाव था: jPlayer ("setMedia" का यूआरएल हिस्सा ....

तो यह किया जाना चाहिए था (...).jPlayer("setMedia", {mp3: url}).(...)

+0

एक लिंक पर क्लिक करके एक फाइल खेलने का उदाहरण के लिए धन्यवाद।! मुझे दस्तावेज़ तैयार करने के लिए फ़ाइल तैयार करने के बहुत सारे नमूने मिले, लेकिन क्लिक के साथ एक अलग फ़ाइल लोड करने वाला यह पहला है। –

2

एक बहुत खोजने के बाद यह समाधान के भी एक हो सकता है

 function songs(json1) {
$("#jquery_jplayer_1").jPlayer("destroy"); //this will destroy previous jplayer content and then if you again call this function it will add the new url of you audio song to the jplayer
var audio_url_inside = json1.audio_url;
$('#jquery_jplayer_1').jPlayer({
ready:function (event) {
$(this).jPlayer("setMedia", {
mp3:audio_url_inside,
oga:audio_url_inside
}).jPlayer("play"); //attemp to play media
},
swfPath:"http://www.jplayer.org/2.1.0/js",
supplied:"mp3, oga"
});
}

:। आशा है कि यह मदद मिलेगी

+0

दूर तक का सबसे अच्छा समाधान। ट्रिक .jplayer ("नष्ट") है; –