Mã đề F - Lần 2

Đề bài: Trình phát nhạc mô phỏng có phím điều khiển

Ngữ cảnh: Danh sách phát nhạc mô phỏng (chỉ hiển thị tên bài, không cần file âm thanh thật), điều khiển phát/dừng/chuyển bài bằng nút bấm hoặc bàn phím.

Yêu cầu

  1. Có nút "Phát/Tạm dừng", "Bài trước", "Bài sau", "Tăng âm lượng", "Giảm âm lượng", khu vực hiển thị bài đang phát và thanh tiến trình mô phỏng.
  2. Bổ sung xử lý cho tối thiểu 3 loại sự kiện khác ngoài click: mouseover/mouseout để hiện/ẩn chú thích khi rê chuột vào các nút, và keydown để bắt phím điều khiển.
  3. Có 1 chức năng chỉ dùng được bằng bàn phím: nhấn phím mũi tên lên/xuống để tăng/giảm âm lượng khi không dùng chuột.
  4. Toàn bộ hàm xử lý phải tách riêng khỏi phần gắn sự kiện, đặt tên hàm rõ nghĩa.
  5. Vẽ và nộp kèm sơ đồ event workflow của tối thiểu 2 tương tác trong bài (ví dụ: bấm nút Phát/Tạm dừng và nhấn phím mũi tên lên để tăng âm lượng). Xem ví dụ sơ đồ trong dapan.html.
  6. Giữ nguyên toàn bộ yêu cầu Lần 1: addEventListener cho mọi sự kiện, tối thiểu 5 nút chức năng, 1 phần tử có 2 hàm xử lý cho cùng sự kiện click, bộ đếm thao tác.

Kết quả mong đợi tương tự hình minh họa dưới đây (xem file dapan.html để đối chiếu chi tiết):

Ràng buộc cấu trúc riêng cho mã đề F

Khối details/summary: Dùng details/summary để trình bày một ghi chú mở rộng liên quan đến mã đề. Không thay ràng buộc này bằng cấu trúc của mã đề khác.

Ảnh chụp minh họa kết quả bài Trình phát nhạc mô phỏng có phím điều khiển