Đây là phần mở rộng của this questionVới phần tử video HTML5 trên iphone, làm cách nào tôi có thể phát hiện sự khác biệt giữa "tạm dừng" và "đã hoàn tất"?
Theo nghiên cứu của tôi, đối với phần tử video trên iPhone/iPad, nhấn cả "Xong" và "Tạm dừng" sẽ kích hoạt sự kiện "tạm dừng". Vì vậy, nếu tôi có một số hành vi trang web mong muốn mà tôi muốn bắt đầu khi nhấn nút "xong", tôi cần lắng nghe sự kiện "tạm dừng".
player = document.getElementById('videoplayer');
player.addEventListener("pause", function() {
//desired "done button" behavior defined here
}, false);
Theo Arv-ToolTwist's answer với câu hỏi ban đầu, cách một phân biệt giữa "thực hiện" và "tạm dừng" là bằng cách kiểm tra các webkitDisplayingFullscreen
boolean (kể từ khi "làm" thoát nút ra khỏi toàn màn hình, boolean sẽ trở lại sai).
player.addEventListener("pause", function() {
if(!player.webkitDisplayingFullscreen) {
//desired "done button" behavior defined here
}
}, false);
Tuy nhiên, trong trường hợp một người dùng tạm dừng video khi người chơi ở chế độ toàn màn hình và sau đó nhấn "thực hiện" trong khi video đang chững lại, các "ý muốn thực hiện hành vi nút" không được khởi xướng.
Nghiên cứu của tôi không tăng thêm thông tin về điều này, nhưng giả định của tôi là sự kiện "tạm dừng" không được kích hoạt lần thứ hai hoặc được kích hoạt lần thứ hai trước khi thay đổi boolean webkitDisplayingFullscreen
thành "false". Dù bằng cách nào, các thiết bị có thể biết sự khác biệt giữa hai "thực hiện" và "tạm dừng" (ngay cả khi các cầu thủ đã được tạm dừng), vì vậy tôi tự hỏi
- cách thiết bị kể sự khác biệt, và
- cho dù có một cách để phát hiện khi người chơi thoát khỏi chế độ toàn màn hình, để ngay cả khi người chơi đã bị tạm dừng, nhấn nút "xong" vẫn được phát hiện và hành vi mong muốn vẫn được bắt đầu.
Bạn đã tìm thấy một giải pháp? Tôi hiện đang bị mắc kẹt tại cùng một điểm chính xác. – Mark
Không, chưa có giải pháp nào. – Scott