2013-03-13 72 views
5

Tôi đang phát triển một trang web triển khai chức năng cụ thể cho các thiết bị hỗ trợ cảm ứng. Tôi nhắm mục tiêu nhắm mục tiêu đến điện thoại thông minh, máy tính bảng và trên thực tế mọi thứ sử dụng màn hình cảm ứng làm đầu vào chính.Làm thế nào để kiểm tra màn hình cảm ứng (không phải là "khả năng cảm ứng")?

Để đạt được điều này tôi đang sử dụng Modernizr của Modernizr.touch

Tuy nhiên, điều này trả về true trên chrome với các máy tính có cài đặt một Wacom bút. (Được xác nhận với Wacom Intuos 5). Rõ ràng, thiết bị đầu vào chính trên các máy tính này là bàn phím và chuột chứ không phải màn hình cảm ứng. Điều này tạo ra một kết quả dương tính giả, vì tôi muốn phân phối UX trên máy tính để bàn cho các máy tính này chứ không phải UX màn hình cảm ứng.

Có cách nào để kiểm tra "khả năng màn hình cảm ứng", thay vì "khả năng chạm" không? Hoặc bất kỳ phương pháp sáng tạo nào khác để giải quyết vấn đề này và tránh dương tính giả?

+0

Tôi đã tìm kiếm câu trả lời cho điều này trong vài tháng. Thật không may, tôi không nghĩ rằng nó có thể phát hiện phần cứng theo cách này. – BenM

+0

Đây là một cuộc thảo luận dài về chủ đề này: https://github.com/Modernizr/Modernizr/issues/548 –

Trả lời

0

Kiểm tra người dùng đơn giản "Nhấp hoặc Nhấn vào Hộp này" sẽ có thể cho bạn biết liệu họ có sử dụng chuột hoặc một số thiết bị cảm ứng để hoàn thành tác vụ hay không. Vì bạn có thể nhận được tác nhân người dùng của thiết bị, cho máy tính bảng và điện thoại dễ dàng giả định với hai dữ liệu mà họ có khả năng chạm ... vì vậy bạn chỉ có thể trình bày "thử nghiệm" nếu bạn phát hiện người dùng máy tính để bàn cũng đã kiểm tra tích cực cho một thiết bị cảm ứng (nên là một mẫu nhỏ hơn so với kiểm tra tất cả mọi người, có thể gây phiền nhiễu cho người dùng). Tất nhiên tôi cũng bằng cách nào đó nhớ kết quả lựa chọn/kiểm tra của người dùng để bạn không phải sửa lỗi lại.

+1

Tôi đánh giá cao đầu vào (không có ý định chơi chữ) :) Tôi muốn tránh hỏi bất kỳ người dùng nào vì có thứ gì đó xâm phạm "Nhấp vào nút này để tôi có thể trình bày cho bạn menu thích hợp". Tôi đang tìm cách để đạt được điều này tự động. Duy trì một danh sách hoạt động của các tác nhân người dùng và khả năng, sau đó gắn nó vào hồ sơ người dùng có vẻ như một giải pháp không cân xứng, không phù hợp cho vấn đề này. – OpherV

+0

Về mặt kỹ thuật, có một dự án được gọi là WURFL ánh xạ các tác nhân người dùng tới các khả năng của thiết bị (nó được sử dụng để phát hiện thiết bị phía máy chủ). Tôi không biết về nhận thức của nó về các sự kiện cảm ứng mặc dù (nó được sử dụng chủ yếu để phục vụ WML vs XHTML-MP) –

+0

Tại sao các downvote? Nhìn vào chuỗi User-Agent và quyết định một cái gì đó thực sự là khá phổ biến và thực hành tiêu chuẩn. Đây là cách phần lớn các trang web "được bật trên thiết bị di động" xác định trang web nào sẽ phân phát cho khách. Nếu không có người sử dụng cụ thể nói với bạn những gì họ có thiết bị, tôi nghĩ rằng đây là điều tốt nhất tiếp theo. – SnakeDoc

Các vấn đề liên quan