2012-12-17 31 views
5

Tôi cần một bản demo đơn giản về cách khởi chạy và đóng video YouTube trong một Twitter Bootstrap Modal từ JavaScript (thay vì nhấp vào thẻ liên kết).Làm thế nào tôi có thể khởi chạy và đóng jQuery Twitter Bootstrap Modal bằng một video trên YouTube?

Cho đến giờ tôi có thể khởi chạy ứng dụng này tốt, nhưng khi đóng nó vẫn tiếp tục phát trong nền.

Dưới đây là html của tôi:

<div id="myModalThumbnail"><img src="http://placehold.it/250x150&text=Video%20Thumbnail"> 
</div> 

<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> 
    <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> 
    </div> 
    <div class="modal-body"> 
     <iframe width="520" height="390" frameborder="0" allowfullscreen=""></iframe> 
    </div> 
</div>​ 

Javascript:

$('#myModalThumbnail').click(function() { 
    var src = 'http://www.youtube.com/v/KVu3gS7iJu4&amp;rel=0&amp;autohide=1&amp;showinfo=0&amp;autoplay=1'; 
    $('#myModal').modal('show'); 
    $('#myModal iframe').attr('src', src); 
}); 

Và một jsfiddle: http://jsfiddle.net/VtKS8/5/

gì tiếp theo?

Trả lời

8

Vâng, có vẻ như tất cả những gì tôi cần làm là xóa thuộc tính src trên nhấp chuột vào nút.

$('#myModal button').click(function() { 
    $('#myModal iframe').removeAttr('src'); 
}); 

JSFiddle: http://jsfiddle.net/VtKS8/6/

+1

Cảm ơn! Tôi đã cố gắng để có được điều tương tự và kiểm soát video nhưng với API iFrame và chạy vào trình duyệt không tương thích. Điều này cảm thấy như một tác dụng phụ nhưng thực hiện rất tốt cho đến nay. – Pod

+0

nhưng khi bạn nhấn thoát nó vẫn đóng –

+0

Đối với 'esc', hãy thêm một cái gì đó như thế này:' $ (tài liệu) .keydown (hàm (e) {if (e.keyCode === 27) {$ ('# ifModal iframe ') .removeAttr (' src ');}}); 'Xem fiddle cập nhật này: http://jsfiddle.net/VtKS8/33/ Làm việc cho tôi. – Ryan

2

Đây là phiên bản cập nhật cho bootstrap 3 sử dụng được xây dựng trong móc bootstrap

<script> 
    $(document).ready(function() { 
     $('#audiomodal').on('hidden.bs.modal', function() { 
      $("audio").attr('src', ''); 
     }); 
    }); 
</script> 
+0

Bất kỳ cơ hội của một fiddle hoặc một url của một trang với điều này làm việc? Lời chúc tốt đẹp nhất, Lee. – user1070143

Các vấn đề liên quan