Repositori ini berisi plugin yang dibangun untuk MediaElementJS.
ES6 untuk fitur2.3.0Sebagai bagian dari peningkatan berkelanjutan pemain, kami telah memutuskan untuk memberikan dukungan sepenuhnya untuk IE9 dan IE10, karena pangsa pasar browser bersama-sama adalah 0,4%, menurut https://caniuse.com/usage-able.
Perubahan ini untuk repositori MediaElement dan MediaElement Plugins .
Unduh paket dari https://github.com/mediaelement/mediaelement-plugins, dan referensi plugin apa pun yang Anda butuhkan dari folder dist dan tambahkan konfigurasi apa pun yang terkait dengan plugin.
Atau Anda dapat menggunakan CDN; Periksa https://cdnjs.com/libraries/mediaelement-plugins.
Misalnya, jika Anda ingin menginstal plugin Speed , lakukan hal berikut:
< script src =" /path/to/mediaelement-and-player.min.js " > </ script >
<!-- Include any languages from `build/lang` folder -->
< script src =" /path/to/dist/speed/speed.min.js " > </ script >
<!-- Translation file for plugin (includes ALL languages available on player)-->
< script src =" /path/to/dist/speed/speed-i18n.js " > </ script >
< script >
var player = new MediaElementPlayer ( 'playerId' , {
defaultSpeed : 0.75 ,
// other configuration elements
} ) ;
</ script >Beberapa dari mereka akan berisi gaya CSS jadi letakkan setelah stylesheet pemain utama:
< link rel =" stylesheet " href =" /path/to/mediaelementplayer.min.css " >
< link rel =" stylesheet " href =" /path/to/dist/speed/speed.min.css " > Unduh di https://nodejs.org/ dan ikuti langkah -langkah untuk menginstalnya, atau menginstal node.js dengan npm .
Setelah diinstal, pada prompt perintah, ketik npm install , yang akan mengunduh semua alat yang diperlukan.
/src/ direktori, dan tidak pernah di /dist/ direktori. Ini dengan tujuan tunggal untuk memfasilitasi operasi penggabungan (dan lebih lanjut, kompilasi), dan membantu orang untuk melihat perubahan dengan lebih mudah.npm run eslint untuk memastikan kualitas kode.loop/loop.js ).package.json dengan perintah di bawah konfigurasi script untuk memastikan itu akan dibundel dan dikompilasi dengan benar. Untuk referensi lebih lanjut, tinjau file.docs/FEATURE_NAME.md yang menjelaskan tujuannya, API, dll., Dan tambahkan nama dengan tautan ke dokumennya di file README untuk menjaga dokumentasi terkini.MediaElement untuk manipulasi DOM/ajax/dll. Periksa tautan ini untuk detail lebih lanjut.. mejs__ [ feature_name ] , . mejs- [ feature_name ] {
// all your styles
} 'use strict' ;
/**
* [Name of feature]
*
* [Description]
*/
// If plugin needs translations, put here English one in this format:
// mejs.i18n.en["mejs.id1"] = "String 1";
// mejs.i18n.en["mejs.id2"] = "String 2";
// Feature configuration
Object . assign ( mejs . MepDefaults , {
// Any variable that can be configured by the end user belongs here.
// Make sure is unique by checking API and Configuration file.
// Add comments about the nature of each of these variables.
} ) ;
Object . assign ( MediaElementPlayer . prototype , {
// Public variables (also documented according to JSDoc specifications)
/**
* Feature constructor.
*
* Always has to be prefixed with `build` and the name that will be used in MepDefaults.features list
* @param {MediaElementPlayer} player
* @param {HTMLElement} controls
* @param {HTMLElement} layers
* @param {HTMLElement} media
*/
build [ feature_name ] ( player , controls , layers , media ) {
// This allows us to access options and other useful elements already set.
// Adding variables to the object is a good idea if you plan to reuse
// those variables in further operations.
const t = this ;
// All code required inside here to keep it private;
// otherwise, you can create more methods or add variables
// outside of this scope
} ,
// Optionally, each feature can be destroyed setting a `clean` method
/**
* Feature destructor.
*
* Always has to be prefixed with `clean` and the name that was used in MepDefaults.features list
* @param {MediaElementPlayer} player
* @param {HTMLElement} controls
* @param {HTMLElement} layers
* @param {HTMLElement} media
*/
clean [ feature_name ] ( player , controls , layers , media ) { }
// Other optional public methods (all documented according to JSDoc specifications)
} ) ; Jika string yang dapat diterjemahkan adalah bagian dari plugin, Anda perlu membuat file [feature_name]-i18n.js dengan format ini:
'use strict' ;
if ( mejs . i18n . ca !== undefined ) {
mejs . i18n . ca [ "mejs.id1" ] = "" ;
}
if ( mejs . i18n . cs !== undefined ) {
mejs . i18n . cs [ "mejs.id1" ] = "" ;
}
// And the rest of the languages Catatan : Semakin banyak bahasa yang terintegrasi pada MediaElementPlayer , semakin besar template ini.
Juga, jika Anda menambahkan bahasa baru ke MediaElementPlayer , Anda perlu menambahkannya di semua file i18n yang ada dengan cara yang sama yang dijelaskan dalam templat di atas.
ES6 untuk fitur Semua fitur ditulis menggunakan spesifikasi Ecmascript 2015 .
Lihat src/ Direktori, dan periksa bagaimana file ditulis untuk memastikan kompatibilitas.
Catatan : for...of loop bisa digunakan, tetapi untuk menggabungkannya dan mengurangi ukuran file yang dibundel, sangat disarankan untuk menghindari penggunaannya.
Perubahan tersedia di Log Ubah