HTMLAudioElement: hàm khởi tạo Audio()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Hàm khởi tạo Audio() tạo và trả về HTMLAudioElement mới có thể được gắn vào tài liệu để người dùng tương tác và/hoặc nghe, hoặc có thể được sử dụng ngoài màn hình để quản lý và phát âm thanh.
Cú pháp
new Audio()
new Audio(url)
Tham số
urlOptional-
Chuỗi tùy chọn chứa URL của tệp âm thanh được liên kết với phần tử âm thanh mới.
Giá trị trả về
Đối tượng HTMLAudioElement mới, được cấu hình để sử dụng cho việc phát lại âm thanh từ tệp được chỉ định bởi url. Thuộc tính preload của đối tượng mới được đặt thành auto và thuộc tính src của nó được đặt thành URL được chỉ định hoặc null nếu không có URL nào được cung cấp. Nếu URL được chỉ định, trình duyệt bắt đầu không đồng bộ tải tài nguyên phương tiện trước khi trả về đối tượng mới.
Ghi chú sử dụng
Bạn cũng có thể sử dụng các phương thức tạo phần tử khác, chẳng hạn như phương thức createElement() của đối tượng document, để xây dựng HTMLAudioElement mới.
Xác định khi nào có thể bắt đầu phát lại
Có ba cách để biết khi nào đủ tệp âm thanh đã được tải để cho phép phát lại bắt đầu:
- Kiểm tra giá trị của thuộc tính
readyState. Nếu làHTMLMediaElement.HAVE_FUTURE_DATA, có đủ dữ liệu để bắt đầu phát lại. Nếu làHTMLMediaElement.HAVE_ENOUGH_DATA, thì có đủ dữ liệu để bạn có thể phát âm thanh đến hết mà không bị gián đoạn. - Lắng nghe sự kiện
canplay. Nó được gửi đến phần tử<audio>khi có đủ âm thanh để bắt đầu phát lại, mặc dù có thể xảy ra gián đoạn. - Lắng nghe sự kiện
canplaythrough. Nó được gửi khi ước tính âm thanh có thể phát đến hết mà không bị gián đoạn.
Cách tiếp cận dựa trên sự kiện là tốt nhất:
myAudioElement.addEventListener("canplaythrough", (event) => {
/* the audio is now playable; play it if permissions allow */
myAudioElement.play();
});
Quản lý bộ nhớ
Nếu tất cả các tham chiếu đến phần tử âm thanh được tạo bằng hàm khởi tạo Audio() bị xóa, phần tử sẽ không bị xóa khỏi bộ nhớ bởi cơ chế thu gom rác của JavaScript runtime nếu việc phát lại đang diễn ra. Thay vào đó, âm thanh sẽ tiếp tục phát và đối tượng sẽ vẫn ở trong bộ nhớ cho đến khi việc phát lại kết thúc. Vào thời điểm đó, đối tượng trở thành đối tượng để thu gom rác.
Thông số kỹ thuật
| Specification |
|---|
| HTML> # dom-audio-dev> |
Tương thích trình duyệt
Xem thêm
- Web media technologies
- Phần tử HTML triển khai giao diện này:
<audio>.