Kiểm tra xem người dùng có trực tuyến không JavaScript
Nếu bạn muốn biết liệu người dùng có kết nối mạng đang hoạt động hay không, bạn có thể kiểm tra thuộc tính window.addEventListener(‘online’, () => {0 được tìm thấy trên đối tượng window.addEventListener(‘online’, () => {1 Show window.navigator.onLine; // true | false Mặc dù điều này hữu ích để kiểm tra tại bất kỳ thời điểm nào xem trình duyệt có đang đăng ký kết nối đang hoạt động hay không nhưng bạn có thể muốn cập nhật ứng dụng / trang của mình khi kết nối của người dùng bị ngắt/tự thiết lập lại. Bạn có thể làm điều này bằng cách lắng nghe các sự kiện `online` và `offline` của đối tượng `window` window.addEventListener(‘online’, () => { Bạn có thể sử dụng những sự kiện này để cập nhật một phần giao diện người dùng của mình hoặc thay đổi cách ứng dụng của bạn hoạt động theo một cách nào đó. Ví dụ const statusElem = document.getElementById(‘status’); Hỗ trợ trình duyệt cho các sự kiện window.addEventListener(‘online’, () => {2 / window.addEventListener(‘online’, () => {3 thực sự khá tốt với hầu hết các trình duyệt đều hỗ trợ chúng. https. // caniuse. com/?search=online Bạn cũng có thể tìm hiểu thêm thông tin về kết nối của người dùng (do trình duyệt báo cáo) bằng cách truy cập `navigator. kết nối` đối tượng navigator.connection; Thuộc tính window.addEventListener(‘online’, () => {4 khá hữu ích ở đây vì nó biểu thị tốc độ tải xuống tính bằng megabit có sẵn cho người dùng Người dùng có thể đang truy cập trang web của bạn và nhận được phiên bản đã lưu trong bộ nhớ cache, do đó, có vẻ như internet của họ vẫn hoạt động. Tuy nhiên, họ đã mất kết nối dưới mui xe và sẽ không có nội dung mới nào được tải Đây là lúc có thể hữu ích khi hiển thị cho họ một số thông báo để cho họ biết rằng họ nên kiểm tra kết nối của mình Đang phát hiện trạng thái kết nối permalinkChúng tôi có thể tận dụng API window.addEventListener(‘online’, () => {5 để phát hiện trạng thái kết nối. Điều này sẽ trả về một boolean để cho biết liệu người dùng có trực tuyến hay không
Điều này sẽ hoạt động tốt ở lần tải đầu tiên, vì vậy chúng tôi có thể làm điều gì đó như thế này
Nhưng chúng tôi sẽ không biết liệu trạng thái mạng có thay đổi sau khi tải hay không, điều này không lý tưởng Chúng tôi có thể đăng ký các sự kiện ngoại tuyến và trực tuyến để lắng nghe những thay đổi cụ thể đó
Bản trình diễn liên kết cố địnhHãy thiết lập một bản demo nhanh để chứng minh điều này. Chúng tôi sẽ sử dụng một thành phần văn bản cơ bản ở giữa màn hình, nhưng tất nhiên, bạn có thể tạo kiểu và triển khai thành phần này theo bất kỳ cách nào bạn muốn
Chúng tôi đang xây dựng điều này với tiền đề rằng mặc định là trạng thái được kết nối Hãy thêm một số kiểu dáng cơ bản vào hỗn hợp
Theo mặc định, điều này sẽ chỉ hiển thị tin nhắn trực tuyến. Hãy thêm một điều kiện là nếu phần tử trạng thái có một lớp ngoại tuyến, chúng ta sẽ chuyển đổi hai div Bây giờ, nếu chúng ta thêm lớp ngoại tuyến vào div trạng thái, chúng ta sẽ thấy thông báo ngoại tuyến Vậy làm thế nào chúng ta có thể chuyển đổi chúng dựa trên trạng thái mạng?
Đúng, đoạn mã này thực hiện thủ thuật. Chúng tôi đã khởi tạo điều này trong lần tải đầu tiên và tạo một chức năng mới để kiểm tra trạng thái hoa tiêu Sau đó, chúng tôi thêm trình xử lý sự kiện để lắng nghe những thay đổi để chúng tôi có thể hành động dựa trên chúng. Khi thay đổi có thể thêm bớt tên lớp Nếu chúng ta thử nó, nó trông như thế này Hoặc dùng thử trên CodePen này Cảm ơn bạn đã đọc và hãy kết nối. liên kết cố địnhCảm ơn bạn đã đọc blog của tôi. Vui lòng đăng ký nhận bản tin email của tôi và kết nối trên Facebook hoặc Twitter Tôi đang trực tuyến hay ngoại tuyến?Mở điện thoại của bạn và truy cập ứng dụng cài đặt. Dưới phần “kết nối”, có một tab tên là “Wi-Fi”. Nhấp vào nút này và đảm bảo rằng nút đó có chữ “bật” ở trên cùng và nút ở bên phải có màu xanh lục .
Cái nào sau đây dùng để kiểm tra trạng thái onLine của trình duyệt?onLine . Trả về trạng thái trực tuyến của trình duyệt. |