2017-05-21 17 views
0

Youtubeエンベデッドビデオを角2で停止する適切な方法はどれですか?モーダルのクローズイベントでの角度2のバインディング

AngularJSのように、最良の解決策は、iframeのsrcプロパティを変更するためにJQueryを使用しているようですが、これはAngular2では避けるべきです。 Stop Youtube video after modal close

アングル2では、私はDOMを操作するつもりはないので、私の埋め込みiframeは、自分のコンポーネント内の変数からsrcプロパティを受け取ります。このプロパティを設定解除すると、ビデオは期待どおりに再生されなくなります。

したがって、(close)ボタンへのバインディングはうまく機能しますが、モーダル外をクリックすると再生が停止しません。

私は(close)(hide)(hidden)、および(dismiss)私のモーダル<div>にバインドしようとしましたが、それらのどれも機能しません。

このようなものが可能である場合、私は疑問に思う:

<div (hide)="stopVideoPlayer()" class="modal fade" id="modal-video" tabindex="-1" role="dialog" aria-labelledby="modal-video" aria-hidden="true"> 
     <button (click)="stopVideoPlayer()" type="button" class="close" data-dismiss="modal"> 
      <span aria-hidden="true">&times;</span> 
     </button> 
     </div> 
     <div class="modal-body"> 
     <div class="modal-video"> 
      <iframe id="video-player" width="640" height="480" class="embed-responsive-item" [src]="selectedVideo" frameborder="0"></iframe> 
      </div> 
     </div> 
    </div> 
    </div> 
</div> 
+0

モーダル外をクリックすると閉じられますか? –

+0

うん、それはほぼ閉鎖 – luso

+0

plunkrを作成できますか? –

答えて

0

あなたはモーダルが隠され、すべてのCSSの遷移が完了した後にトリガされ(onHidden)を使用する必要があります。このメソッドで値を送出します。

<div (onHidden)="afterHidden($event)"> </div> 
+0

は動作していないようです...私は(隠された)と(onHidden)試みましたが、それらのどれもが私の機能を引き起こしません。 – luso

+0

あなたの投稿にコードを更新しようとしました – Aravind

+0

よく、私は既に述べたものと隠れたあなたの提案を試みましたが、どれもこれまでのところは動作しません – luso

関連する問題