目次
Text
始めましょう
コンポーネント FacebookPlayer にカプセル化します
使用方法
注意事項
プロパティ
メソッド
Description
ホームページ ウェブフロントエンド Vue.js vue3 で Facebook 埋め込みビデオ プレーヤー API を使用する方法

vue3 で Facebook 埋め込みビデオ プレーヤー API を使用する方法

May 14, 2023 pm 01:52 PM
vue3 facebook api

Text

Facebook 埋め込みビデオ プレーヤー API は、Facebook SDK の JavaScript バージョンによって提供されるクライアント機能です。 Facebook ビデオを Web サイト上で再生できます。

始めましょう

まず Facebook SDK を紹介します

<script async defer src="https://connect.facebook.net/en_US/sdk.js"></script>
ログイン後にコピー

コンポーネント FacebookPlayer にカプセル化します

<script setup>
import { onMounted, onBeforeUnmount } from "vue";
const props = defineProps({
  id: { type: String, default: "" },
  src: { type: String, required: true },
  autoplay: { type: Boolean, default: false }
});
const emit = defineEmits(["onEnded", "onPlay", "onPause"]);
onMounted(() => {
  fbAsyncInit();
  loadPlayer();
});
onBeforeUnmount(() => {
  removePlay();
  removePaused();
  removeEnded();
  player = null;
});
// Load Facebook SDK for JavaScript
const fbAsyncInit = () => {
  try {
    window.FB.init({ autoLogAppEvents: true, xfbml: true, version: "v3.2" });
  } catch (error) {
    console.error("FB.init Error", error);
  }
};
// Get Embedded Video Player API Instance
let player = null;
const loadPlayer = () => {
  try {
    window.FB.Event.subscribe("xfbml.ready", (msg) => {
      if (msg.type === "video" && msg.id === `fb-${props.id}`) {
        if (!player) player = msg.instance;
        onPlay(msg.instance);
        onPaused(msg.instance);
        onEnded(msg.instance);
      }
    });
  } catch (error) {
    console.error("FB.Event Error", error);
  }
};
// 播放器方法
const play = () => player && player.play();
const pause = () => player && player.pause();
// 播放器事件
let playListener;
const onPlay = (instance) => {
  playListener = instance.subscribe("startedPlaying", () => emit("onPlay"));
};
const removePlay = () => {
  try {
    if (playListener) playListener.release("startedPlaying");
  } catch (error) {}
};
let pausedListener;
const onPaused = (instance) => {
  pausedListener = instance.subscribe("paused", () => emit("onPause"));
};
const removePaused = () => {
  try {
    if (pausedListener) pausedListener.release("paused");
  } catch (error) {}
};
let endedListener;
const onEnded = (instance) => {
  endedListener = instance.subscribe("finishedPlaying", () => emit("onEnded"));
};
const removeEnded = () => {
  try {
    if (endedListener) endedListener.release("finishedPlaying");
  } catch (error) {}
};
</script>
<template>
  <div
    :id="&#39;fb-&#39; + id"
    class="fb-video"
    :data-href="props.src" rel="external nofollow" 
    :data-autoplay="props.autoplay"
    :data-allowfullscreen="false"
  ></div>
</template>
ログイン後にコピー

使用方法

<facebook-player id="10153231379946729" src="https://www.facebook.com/facebook/videos/10153231379946729/"></facebook-player>
ログイン後にコピー

注意事項

class="fb-video" このクラス名は削除できません。

ページで複数のプレーヤーが使用されている場合は、プレーヤーを識別するために一意の ID を渡す必要があります。

プロパティ

設定 説明 デフォルト値
data-href ビデオの絶対 URL。 n/a
data-allowfullscreen ビデオを全画面モードで再生できるようにします。偽でも真でも構いません。 false
data-autoplay ページが読み込まれると、ビデオの再生が自動的に開始されます。ビデオは音なし(ミュート)で再生されます。ユーザーは、ビデオ プレーヤーのコントロールを使用してサウンドをオンにすることができます。この設定はモバイル デバイスでは機能しません。偽でも真でも構いません。 false
data-lazy true は、loading="lazy" iframe 属性を設定することでブラウザの遅延読み込みメカニズムを使用できることを意味します。その結果、プラグインがビューポートの近くにない場合、ブラウザはプラグインを表示せず、プラグインが表示されない可能性があります。 true または false (デフォルト) のいずれかを指定できます。 false
data-width ビデオコンテナの幅。最小値は 220px です。 auto
data-show-text Facebook 投稿にビデオに関連付けられたテキストがある場合は、true に設定してそのテキストを追加します文章 。デスクトップ サイトのみに適用されます。 false
data-show-captions デフォルトで字幕を表示するには、true に設定します (該当する場合)。字幕はデスクトップデバイスでのみ利用可能です。 false

メソッド

##関数説明play()pause()#seek(秒)指定された場所を検索します。 秒 (数字)mute()ビデオをミュートに設定します。 unmute()ビデオのミュートを解除します。 ビデオがミュートに設定されている場合は true、それ以外の場合は false。 ボリュームを指定された数値 (0 から 1 の範囲の浮動小数点数) に設定します。 ビデオの現在の音量を返します (float、範囲は 0 ~ 1)。 現在のビデオ時間位置を秒単位で返します。 動画の継続時間を秒単位で返します。 指定されたイベントのリスニング関数を追加します。イベントの詳細については、「イベント」セクションを参照してください。 release メソッドを含むパスワードを返します。このメソッドを呼び出すと、イベントからリスナーが再度削除されます。 event (文字列)、eventCallback (関数)##Event##Event
パラメータ (タイプ)
ビデオを再生します。
ビデオを一時停止します。


isMuted()

setVolume(volume)
volume (float) getVolume()

getCurrentPosition()

getDuration()
#subscribe(event,eventCallback)

Description

startedPlayingビデオの再生が開始されると発生します。 pausedビデオが一時停止されるときに発生します。 finishedPlayingビデオの再生が終了するとトリガーされます。 startedBufferingビデオのバッファリングが開始されるときに発生します。 finishedBufferingビデオがバッファリングから再開するときに発生します。 errorビデオでエラーが発生するとトリガーされます。

以上がvue3 で Facebook 埋め込みビデオ プレーヤー API を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP プロジェクトで API インターフェイスを呼び出してデータをクロールおよび処理するにはどうすればよいですか? PHP プロジェクトで API インターフェイスを呼び出してデータをクロールおよび処理するにはどうすればよいですか? Sep 05, 2023 am 08:41 AM

PHP プロジェクトで API インターフェイスを呼び出してデータをクロールおよび処理するにはどうすればよいですか? 1. はじめに PHP プロジェクトでは、多くの場合、他の Web サイトからデータをクロールし、これらのデータを処理する必要があります。多くの Web サイトでは API インターフェイスが提供されており、これらのインターフェイスを呼び出すことでデータを取得できます。この記事では、PHP を使用して API インターフェイスを呼び出し、データをクロールおよび処理する方法を紹介します。 2. API インターフェースの URL とパラメーターを取得する 開始する前に、ターゲット API インターフェースの URL と必要なパラメーターを取得する必要があります。

React API 呼び出しガイド: バックエンド API とデータをやり取りおよび転送する方法 React API 呼び出しガイド: バックエンド API とデータをやり取りおよび転送する方法 Sep 26, 2023 am 10:19 AM

ReactAPI 呼び出しガイド: バックエンド API とやり取りしてデータを転送する方法 概要: 最新の Web 開発では、バックエンド API とやり取りしてデータを転送することは一般的なニーズです。 React は、人気のあるフロントエンド フレームワークとして、このプロセスを簡素化するための強力なツールと機能をいくつか提供します。この記事では、React を使用して基本的な GET リクエストや POST リクエストなどのバックエンド API を呼び出す方法を紹介し、具体的なコード例を示します。必要な依存関係をインストールします。まず、Axi がプロジェクトにインストールされていることを確認します。

Oracle API使用ガイド: データ・インタフェース・テクノロジの探求 Oracle API使用ガイド: データ・インタフェース・テクノロジの探求 Mar 07, 2024 am 11:12 AM

Oracle は世界的に有名なデータベース管理システム プロバイダーであり、その API (アプリケーション プログラミング インターフェイス) は、開発者が Oracle データベースと簡単に対話して統合するのに役立つ強力なツールです。この記事では、Oracle API 使用ガイドを詳しく掘り下げ、開発プロセス中にデータ インターフェイス テクノロジを利用する方法を読者に示し、具体的なコード例を示します。 1.オラクル

Python を使用して API データを CSV 形式で保存する Python を使用して API データを CSV 形式で保存する Aug 31, 2023 pm 09:09 PM

データ駆動型のアプリケーションと分析の世界では、API (アプリケーション プログラミング インターフェイス) がさまざまなソースからデータを取得する際に重要な役割を果たします。 API データを操作する場合、多くの場合、アクセスや操作が簡単な形式でデータを保存する必要があります。そのような形式の 1 つは CSV (カンマ区切り値) で、これを使用すると表形式のデータを効率的に編成して保存できます。この記事では、強力なプログラミング言語 Python を使用して API データを CSV 形式で保存するプロセスについて説明します。このガイドで概説されている手順に従うことで、API からデータを取得し、関連情報を抽出し、さらなる分析と処理のためにそれを CSV ファイルに保存する方法を学びます。 Python を使用した API データ処理の世界に飛び込み、CSV 形式の可能性を解き放ってみましょう

MongoDB を使用して単純な CRUD API を開発する方法 MongoDB を使用して単純な CRUD API を開発する方法 Sep 19, 2023 pm 12:32 PM

MongoDB を使用して単純な CRUD API を開発する方法 最新の Web アプリケーション開発において、CRUD (作成、削除、変更、確認) 操作は、最も一般的で重要な機能の 1 つです。この記事では、MongoDB データベースを使用して簡単な CRUD API を開発する方法と、具体的なコード例を紹介します。 MongoDB は、データをドキュメントの形式で保存するオープンソースの NoSQL データベースです。従来のリレーショナル データベースとは異なり、MongoDB には事前定義されたスキーマがありません。

Laravel APIのエラー問題に対処する方法 Laravel APIのエラー問題に対処する方法 Mar 06, 2024 pm 05:18 PM

タイトル: Laravel API エラーの問題に対処する方法、具体的なコード例が必要です Laravel を開発していると、API エラーが頻繁に発生します。これらのエラーは、プログラム コードのロジック エラー、データベース クエリの問題、外部 API リクエストの失敗など、さまざまな理由で発生する可能性があります。これらのエラー レポートをどのように処理するかは重要な問題であり、この記事では、特定のコード例を使用して、Laravel API エラー レポートを効果的に処理する方法を示します。 1. Laravelでのエラー処理

Oracle API統合戦略分析: システム間のシームレスな通信の実現 Oracle API統合戦略分析: システム間のシームレスな通信の実現 Mar 07, 2024 pm 10:09 PM

OracleAPI統合戦略分析: システム間のシームレスな通信を実現するには、特定のコード・サンプルが必要です。今日のデジタル時代では、社内の企業システムは相互に通信してデータを共有する必要があり、OracleAPIは、システム間のシームレスな通信を実現するための重要なツールの1つです。システム。この記事では、OracleAPIの基本概念と原則から始まり、API統合戦略について説明し、最後に読者がOracleAPIをよりよく理解して適用できるように具体的なコード例を示します。 1. 基本的な Oracle API

vue3 のライフサイクルとは何ですか vue3 のライフサイクルとは何ですか Feb 01, 2024 pm 04:33 PM

vue3 の生命期間:1、作成前;2、作成済み;3、マウント前;4、マウント済み;5、更新前;6、更新済み;7、破棄前;8、破棄済み;9、アクティブ化済み;10、非アクティブ化済み;11、エラーキャプチャ済み;12 、getDerivedStateFromProps など

See all articles