In lạiTác giả: Vũ trụ không gianThời gian cập nhật: 2023-11-04 07:51:44284
Tôi chưa tìm thấy bài đăng nào giống hệt bài của tôi, nên đó là vấn đề. Tôi đang tạo một máy nghe nhạc mp3, phát/tạm dừng là hai nút riêng biệt. Đây là mã của tôi.
Nút .bottomToolbar { chiều rộng: 7%; chiều cao: 100%; lý lịch: không có; lặp lại nền: không lặp lại; kích thước nền: tự động 75%; vị trí nền: trung tâm; màu nền: rgb(150, 150, 150); border: none; phác thảo: không có; màu sắc: rgb(255, 255, 255); }
.bottomToolbar .prevButton { hình nền: url("../icons/PrevIcon64.png"); } .bottomToolbar .playButton { hình nền: url("../icons/PlayIcon64.png"); } .bottomToolbar .pauseButton { hình nền: url("../icons/PauseIcon64.png"); display: none; } .bottomToolbar .nextButton { hình nền: url("../icons/NextIcon64.png"); }
Đoạn mã trên thực hiện chức năng mà ứng dụng Chrome của tôi thực hiện. Khi nhấp vào nút phát, nó sẽ ẩn tất cả các nút ngoại trừ nút trước đó. Tại sao điều này lại xảy ra?
câu trả lời hay nhất
Các nút của bạn không biến mất, chúng chỉ rơi xuống hàng tiếp theo sau khi được nhấp vào vì kiểu hiển thị của chúng đang thay đổi.
Khi tải trang, tất cả các nút đều xuất hiện "khối nội tuyến" vì chúng là các thành phần nút không hiển thị "chặn" theo mặc định. Tuy nhiên, khi bạn nhấp vào một hàng, bạn sẽ thay đổi kiểu hiển thị của chúng thành "chặn", do đó, nút giữa hiện được hướng dẫn chiếm toàn bộ một hàng, đẩy các nút trước và nút tiếp theo sang một bên để tất cả được gói thành ba dòng thay vì ở trên một dòng.
Để khắc phục, tôi chỉ thay đổi loại hiển thị trong JavaScript của bạn thành "khối nội tuyến" thay vì "chặn".
Tôi cũng đã thêm từ khóa "var" trước mỗi khai báo biến để chúng không phải là biến toàn cục được gán cho đối tượng window, nhưng điều này sẽ không gây ra bất kỳ vấn đề gì cho bạn.
Hãy thử đoạn mã bên dưới và xem nó có hoạt động như mong đợi không.
var prevButton = document.getElementById("prevbtn"); var playButton = document.getElementById("playbtn"); var PauseButton = document.getElementById("pausebtn"); var nextButton = document.getElementById("nextbtn");
Nút .bottomToolbar { chiều rộng: 7%; chiều cao: 100%; lý lịch: không có; lặp lại nền: không lặp lại; kích thước nền: tự động 75%; vị trí nền: trung tâm; màu nền: rgb(150, 150, 150); border: none; phác thảo: không có; màu sắc: rgb(255, 255, 255); }
.bottomToolbar .prevButton { hình nền: url("../icons/PrevIcon64.png"); } .bottomToolbar .playButton { hình nền: url("../icons/PlayIcon64.png"); } .bottomToolbar .pauseButton { hình nền: url("../icons/PauseIcon64.png"); display: none; } .bottomToolbar .nextButton { hình nền: url("../icons/NextIcon64.png"); }
Tôi là một lập trình viên xuất sắc, rất giỏi!