2012-02-15 12 views
7

का उपयोग कर एमपी 3 फ़ाइल चलाएं जावास्क्रिप्ट के माध्यम से एमपी 3 (बहुत छोटी) फ़ाइल चलाने के लिए सबसे अच्छा और क्रॉस-ब्राउज़र तरीका कौन सा है? मैं अलग अलग तरीकों की कोशिश की लेकिन वहाँ हमेशा एक समस्या ...जावास्क्रिप्ट

संपादित है 1:

मैं एक "पूर्ण" खिलाड़ी की जरूरत नहीं है, मैं सिर्फ एक समारोह की तुलना में मैं कॉल कर सकते हैं हर कुछ होता है

की जरूरत

संपादित करें 2:

ठीक है, मैं बेहतर मेरी समस्या समझाने के लिए है। सर्वर लैन में एक स्मार्टफोन जुड़ा हुआ है, लेकिन हमेशा इंटरनेट पर नहीं। मैं एमपी 3 का उपयोग करना चाहता हूं क्योंकि फ़ाइल का वजन केवल 3 किलो (60 किलोवाट की बजाय) होता है, लेकिन अगर इस फ़ाइल को चलाने के लिए तंत्र बहुत "भारी" (एक खिलाड़ी या jquery.js) है तो मुझे लगता है कि WAV फ़ाइल का उपयोग करना बेहतर है। अन्य सुझाव?

+0

एचटीएमएल 5 ऑडियो टैग – Johan

+1

http://jplayer.org –

+0

@ जोहान मैंने [5] के साथ एचटीएमएल 5 ऑडियो टैग की कोशिश की (http://msdn.microsoft.com/en-us/library/gg589489 (v = vs.85) .aspx) कोड, लेकिन यह क्रोम – supergiox

उत्तर

0

मैं Flowplayer का उपयोग करने की सलाह दूंगा। यह फ्लैश और जावास्क्रिप्ट में लिखा गया है और इसमें HTML5 फॉलबैक है।

सिडेनोट: सभी आईओएस डिवाइस (आईपैड इत्यादि) पर, कोई ऑटोप्ले नहीं है।

5

ऑडियो फ़ाइल में केवल सीधे डाउनलोड के साथ पृष्ठ लोड करें। पता लगाएं कि ब्राउज़र एमपी 3 का समर्थन करता है या नहीं। यदि ऐसा होता है, तो ऑडियो टैग में सीधे डाउनलोड को सीधे बढ़ाएं।

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <title>Audio demo</title> 
    <script src="http://cdnjs.cloudflare.com/ajax/libs/modernizr/2.0.6/modernizr.min.js"></script> 
</head> 
<body> 
    <p id="audio"> 
     <a href="BadAppleEnglish.mp3">Listen &raquo;</a>   
    </p> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
    <script src="http://ajax.aspnetcdn.com/ajax/jquery.templates/beta1/jquery.tmpl.min.js"></script> 
    <script src="audio.js"></script> 
</body> 
</html> 

और जावास्क्रिप्ट:

$(function() { 
var audioElement = $('#audio'), 
    href = audioElement.children('a').attr('href'); 
$.template('audioTemplate', '<audio src="${src}" controls>'); 
if (Modernizr.audio.mp3) { 
    audioElement.empty(); 
    $.tmpl('audioTemplate', {src: href}).appendTo(audioElement); 
} 
}); 

मैं कल्पना कर सकते हैं कि पहले से बनाए गए एमपी 3 खेलने प्लगइन्स के zillions के सबसे इस तरह काम यहां एक नमूना है।

अद्यतन:

आप सवाल निर्दिष्ट करने के लिए है कि आप एक समाधान है कि jQuery का उपयोग नहीं करता पसंद करेंगे संपादित कर लिया है के बाद से, मैं बाहर बिंदु होगा कि इस पुनर्लेखन का उपयोग नहीं करने के लिए jQuery तुच्छ है। यह सिर्फ लंबा और कम सुरुचिपूर्ण है। ध्यान रखें कि सीडीएन से लोड जावास्क्रिप्ट पुस्तकालय आमतौर पर ब्राउज़र द्वारा कैश किए जाते हैं।

+0

मैंने सवाल संपादित किया – supergiox

14

इस का उपयोग करें:

new Audio('your/url/here').play() 

इस (HTMLAudioElement) के लिए दस्तावेज़ MDN में पाया जा सकता, ध्यान दें कि नियंत्रण के सबसे HTMLMediaElement से प्राप्त होती हैं।