Exemple de joueur Brightcove : Lecteur flottant

Dans cette rubrique, vous apprendrez à configurer le HTML, le CSS et le JavaScript dans la page pour permettre au lecteur d'être déplacé vers une nouvelle position, puis de le réparer (jusqu'à ce qu'il soit à nouveau déplacé). La position du joueur restera alors fixe même lorsque l'utilisateur fait défiler la page de haut en bas.

Exemple de lecteur

En utilisant le signe plus (+ ) en haut à gauche du lecteur, faites glisser le lecteur vers un emplacement et déposez-le. Ensuite, faites défiler le texte de la page de haut en bas et vous verrez que le joueur reste fixe à l'emplacement.

Voir le stylo 18195-joueur-flottant par Brightcove Learning Services ( rcrooks1969 ) sur CodePen.

Code source

Voir le solution complète sur GitHub.

Utilisation du CodePen

Voici quelques conseils pour utiliser efficacement le CodePen ci-dessus :

  • Basculez l'affichage réel du joueur en cliquant sur le Result bouton.
  • Cliquez sur les HTML/CSS/JS boutons pour afficher L'UN des types de code.
  • Plus loin dans ce document, la logique, le flux et le style utilisés dans l'application seront discutés dans la configuration Plateur/HTML, le flux d'application et le style de l'application. sections. La meilleure façon de suivre les informations contenues dans ces sections est de :
    1. Cliquez sur le EDIT ON CODEPEN bouton dans le CodePen et ayez le code disponible dans un onglet navigateur/navigateur.
    2. Dans CodePen, réglez le code que vous souhaitez afficher. Vous pouvez modifier la largeur de différentes sections de code dans CodePen.
    3. Voir le Configuration du lecteur/HTML , Flux de candidature et/ou Style d'application sections dans un autre navigateur/onglet de navigateur. Vous pourrez maintenant suivre les explications du code et en même temps afficher le code.

Séquence de développement

Voici la séquence de développement recommandée :

  1. Utilisez l'implémentation du lecteur intégré In-Page pour tester les fonctionnalités de votre lecteur, de votre plugin et de votre CSS (si CSS est nécessaire)
  2. Placez le JavaScript et le CSS du plugin dans des fichiers séparés pour des tests locaux
  3. Déployez le code du plugin et le CSS sur votre serveur une fois que vous avez corrigé des erreurs.
  4. Utilisez Studio pour ajouter le plugin et le CSS à votre lecteur
  5. Remplacez l'implémentation du lecteur intégré dans la page si vous déterminez que l'implémentation iframe est mieux adaptée (détaillée dans la section suivante)

Pour plus de détails sur ces étapes, consultez la section étape par étape : Guide de développement de plug-ins.

Intégrer iFrame ou In-Page

Lorsque vous développez des améliorations pour Brightcove Player, vous devrez décider si le code convient le mieux à l'implémentation intégrée iframe ou In-Page. La recommandation des meilleures pratiques consiste à créer un plugin à utiliser avec une implémentation iframe. Les avantages de l'utilisation du lecteur iframe sont les suivants :

  • Aucune collision avec JavaScript et/ou CSS existants
  • Réactif automatiquement
  • L'iframe facilite l'utilisation dans les applications de médias sociaux (ou lorsque la vidéo devra « voyager » dans d'autres applications)

Bien que l'intégration du lecteur d'intégration dans la page puisse être plus complexe, il y a des moments où vous planifiez votre code autour de cette implémentation. Pour généraliser, cette approche est préférable lorsque la page contenante doit communiquer avec le lecteur. En particulier, voici quelques exemples :

  • Le code dans la page contenant doit écouter et agir sur les événements du joueur
  • Le lecteur utilise des styles de la page contenante
  • L'iframe entraînera l'échec de la logique de l'application, comme une redirection à partir de la page contenant

Même si votre implémentation finale n'utilise pas le code iframe, vous pouvez toujours utiliser le code intégré In-Page avec un plugin pour votre JavaScript et un fichier séparé pour votre CSS. Cela encapsule votre logique afin que vous puissiez facilement l'utiliser sur plusieurs joueurs.

Ressources API/Plugin utilisées

Aucune ressource de l'API Brightcove Player n'est utilisée dans cet exemple. Tout est en CSS et JavaScript.

Configuration du lecteur/HTML

Cette section détaille toute configuration spéciale nécessaire lors de la création du lecteur. En outre, d'autres éléments HTML qui doivent être ajoutés à la page, au-delà du code d'implémentation du lecteur intégré dans la page, sont décrits.

Configuration du lecteur

Aucune configuration spéciale n'est requise pour le lecteur Brightcove que vous créez pour cet exemple.

Autre HTML

Un HTML <div> La balise enveloppe le code du joueur.

Flux d'application

La logique de base derrière cette application est la suivante :

  • Créez un gestionnaire d'événements pour le onmousedown événement (commencer à faire glisser)
  • Créez un gestionnaire d'événements pour le onmouseup événement (chute)
  • Créez un gestionnaire d'événements pour le onmousemove événement (glisser)

Agir en descendant la souris

Trouvez le code étiqueté :

// ### Act on mouse down ###

Prépare le glissement du lecteur et définit le gestionnaire d'événements pour onmousemove.

Agir au mouvement de la souris

Trouvez le code étiqueté :

// ### Act on mouse move ###

Suit la position de la souris sur l'écran.

Agir avec la souris

Trouvez le code étiqueté :

// ### Act on mouse up ###

Définit la position du joueur et efface plusieurs gestionnaires d'événements, par exemple onmousemove.

Style d'application

Le CSS pour #playerWrapper:before définit le cercle avec le signe de la prise qui se trouve en haut à gauche du lecteur. Le CSS pour #playerWrapper définit la frontière autour du joueur.

Code du plug-in

Dans cet exemple, il n'y a pas de plug-in Brightcove Player réel car aucun code API Brightcove Player n'est utilisé. Le JavaScript et le CSS peuvent être déplacés vers des fichiers séparés et liés dans le code. C'est ce que montre le brancher dossier dans GitHub.