Tôi đã tìm thấy một bài viết hay về using the WMP with Firefox trên MSDN.
Dựa trên bài viết của MSDN và sau khi thực hiện một số thử nghiệm và lỗi, tôi thấy sử dụng JavaScript tốt hơn sử dụng bình luận có điều kiện hoặc thẻ "EMBED/OBJECT" lồng nhau.
tôi đã thực hiện một chức năng JS tạo ra đối tượng WMP dựa trên lập luận đưa ra:
<script type="text/javascript">
function generateWindowsMediaPlayer(
holderId, // String
height, // Number
width, // Number
videoUrl // String
// you can declare more arguments for more flexibility
) {
var holder = document.getElementById(holderId);
var player = '<object ';
player += 'height="' + height.toString() + '" ';
player += 'width="' + width.toString() + '" ';
videoUrl = encodeURI(videoUrl); // Encode for special characters
if (navigator.userAgent.indexOf("MSIE") < 0) {
// Chrome, Firefox, Opera, Safari
//player += 'type="application/x-ms-wmp" '; //Old Edition
player += 'type="video/x-ms-wmp" '; //New Edition, suggested by MNRSullivan (Read Comments)
player += 'data="' + videoUrl + '" >';
}
else {
// Internet Explorer
player += 'classid="clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6" >';
player += '<param name="url" value="' + videoUrl + '" />';
}
player += '<param name="autoStart" value="false" />';
player += '<param name="playCount" value="1" />';
player += '</object>';
holder.innerHTML = player;
}
</script>
Sau đó, tôi đã sử dụng chức năng đó bằng cách viết một số đánh dấu và inline JS như thế này:
<div id='wmpHolder'></div>
<script type="text/javascript">
window.addEventListener('load', generateWindowsMediaPlayer('wmpHolder', 240, 320, 'http://mysite.com/path/video.ext'));
</script>
Bạn có thể sử dụng jQuery.ready thay vì sự kiện tải cửa sổ to ma vua mã hơn tương thích ngược và trình duyệt chéo.
Tôi đã thử nghiệm mã qua IE 9-10, Chrome 27, Firefox 21, Opera 12 và Safari 5, trên Windows 7/8.
Giải pháp trình duyệt chéo luôn hoạt động ... Cách phát trực tuyến âm nhạc hoặc âm thanh từ trang web của bạn: http://nunzioweb.com/streaming_audio-example.htm –