2012-06-14 27 views
14

के AJAX लोड किए गए हिस्से पर एक वीडियो.जेएस प्लेयर शुरू करें वीडियो प्लेयर वास्तव में ठीक लोड करता है। मेरी वास्तविक समस्या यह है कि जब मैं अपने पृष्ठ के कुछ हिस्सों को AJAX के साथ रीफ्रेश करता हूं और उन हिस्सों में एक वीडियो प्लेयर होता है, तो HTML5 प्लेयर ठीक लोड करता है, लेकिन Video.js भाग जो इसे अनुकूलित करता है।पेज

वीडियो.जेएस फ़ाइल पृष्ठ के शीर्षलेख में लोड की गई है। मैंने डॉक्टर को पढ़ा है और यह नहीं पाया जा सकता कि किसी वीडियो प्लेयर को पहले से लोड किया गया है। क्या कोई myPlayer.initialize() ऐसा फ़ंक्शन नहीं है जब मैं वीडियो प्लेयर वाले पेज का हिस्सा भाग लेता हूं ताकि वीडियो प्लेयर को वीडियो.जेएस के साथ सही ढंग से लोड किया जा सके?

मुझे लगता है कि video.js फ़ाइल स्वचालित रूप से केवल पृष्ठ लोड पर ही होती है।

आपकी बहुमूल्य मदद के लिए धन्यवाद!

उत्तर

17

हाँ, डॉक्स के अनुसार आप कर सकते हैं:

videojs("example_video_1", {}, function(){ 
    // Player (this) is initialized and ready. 
}); 

यह विशेष रूप से है गतिशील सामग्री :) के साथ प्रयोग की जाने वाली

स्रोत: http://docs.videojs.com/docs/guides/setup.html (नीचे)

+1

यह काम है, धन्यवाद करता में यह किया! मुझे एक और समस्या थी, लेकिन मैंने पाया कि मैं अपने सभी वीडियो पर एक ही आईडी दे रहा था। –

17

मैं था एक ही समस्या है। मेरा परिदृश्य:

वीडियो टैग के साथ एक HTML कोड AJAX के माध्यम से लोड हो रहा है, यह पहली बार काम करता है, लेकिन जब मैं AJAX के साथ सामग्री को रीयलोड करता हूं (पृष्ठ को रीफ्रेश नहीं करता) यह काम नहीं करता है।

मैंने कक्षा के माध्यम से वीडियो खोजने के लिए स्विच किया था, क्योंकि आईडीजी द्वारा आईडी बदल दी गई है।

videojs(document.getElementsByClassName("video-js")[0], {}, function(){ 
      // Player (this) is initialized and ready. 
}); 

आशा उसी समस्या से जहां Bruno समाधान काम नहीं किया था के साथ किसी मदद करता है:

तो यह अब मेरी कॉल है।

+1

साझा करने के लिए धन्यवाद! यह समाधान मेरे मामले के लिए सही है। – leticia

+0

ब्रावो! आपको बहुत टैंक यह समाधान 'रीफ्रेश' समस्याओं के लिए सही है। –

+1

आपको बहुत बहुत धन्यवाद। यह काम किया, स्वीकार्य जवाब नहीं था। इसे एक आधा दिन बर्बाद करने की कोशिश कर रहा था। –

1

मैं एक पाश

var massVideo = $('.video-js'); 
for(var i = 0; i < massVideo.length; i++){ 
    videojs(massVideo[i]).ready(function(){}); 
}