Tôi đã phát triển một ứng dụng web trong asp.net 3.5. Nó tiêu thụ rất nhiều javascript/JQuery sự kiện và làm việc đúng trong trình duyệt bình thường trong pc, nhưng khách hàng của tôi là nói rằng đây không phải là làm việc trong máy tính bảng-pc/android và IPad. Giống như tôi có một danh sách thả xuống, trong đó tôi đang kích hoạt các sự kiện bấm phím và bấm chuột trong javascript, và chúng hoạt động hoàn hảo trong các trình duyệt thông thường, tôi cần phải ở dạng làm việc tất cả trong iPad và máy tính bảng android.Sự kiện Javascript không hoạt động trên Tablet-pc?
Trả lời
Sự kiện nhấp chuột sẽ không hoạt động trên iPad vì màn hình cảm ứng - nhấp vào so với chạm mà tôi đoán. Bạn có cân nhắc sử dụng JQueryMobile thay vì JQuery không? Tôi được tối ưu hóa cho các thiết bị cảm ứng - như nó nói trên trang đầu của trang web.
Thay vì sử dụng nhấp vào nó có một loạt toàn bộ events you can hook into tức tap, swipe, taphold vv ... Nó sẽ là đủ dễ dàng để treo các chức năng tương tự vào một nhấp chuột và một sự kiện tap tức
('myelement').bind('click', function(event){
myClickFunction();
});
('myelement').bind('tap', function(event){
myClickFunction();
});
Có thể (gần như chắc chắn) những cách thanh lịch hơn để làm điều này - nhưng đó chỉ là một sự khởi đầu thực sự.
Bạn có thể làm điều này: '$ ('myelement'). Bind ('click', myClickFunction) .bind ('tap', myClickFunction);' để làm cho mã trông khá –
@AndrewJackman rực rỡ - cũng được thực hiện –
Tôi đã thêm một danh sách thả xuống mới ở đó và đã kích hoạt sự kiện bình thường của selectedIndexCHanged ở đó và nó hoạt động. Bởi vì trong màn hình cảm ứng, chúng tôi không cần phải kích hoạt bất kỳ sự kiện nào của mũi tên trái hoặc mũi tên xuống hoặc cái gì khác. Cho đến nay tôi đang chờ đợi khách hàng của tôi. Tôi hy vọng nó sẽ làm việc trên máy tính của mình là tốt, bởi vì nó làm việc trên mcahine của tôi. –
Có những sự kiện liên lạc cho một thiết bị màn hình cảm ứng:
touchstart: a finger is placed on a DOM element.
touchmove: a finger is dragged along a DOM element.
touchend: a finger is removed from a DOM element.
Có lẽ bạn muốn thử làm việc với những người. Điều đó đang được nói, rất tốt khi sử dụng các sự kiện như change
(hoặc onchange
nội tuyến với phần tử) cho danh sách thả xuống vì nó sẽ hoạt động bất kể nó thay đổi gì (bàn phím, sự kiện chuột hoặc sự kiện chạm).
Here là tài nguyên để tìm hiểu thêm.
Bạn có thể sử dụng một sự kết hợp và thử touchstart thay vì vòi
('myelement').bind('touchstart click', function(event){
myClickFunction();
});
- 1. Trình nghe sự kiện 'keydown' của Javascript không hoạt động
- 2. Hàng đợi sự kiện JSF ajax không hoạt động trên sự kiện hành động sau khi thay đổi sự kiện
- 3. Javascript: sự kiện onScroll (sử dụng Prototype) không hoạt động trên IE?
- 4. Sự kiện JQuery.stopPropagation() không hoạt động
- 5. Sự kiện Phonegap không hoạt động trong iphone
- 6. kích hoạt sự kiện "dán" trong Javascript
- 7. Sự kiện nhấp chuột trên thiết bị di động jQuery không hoạt động
- 8. Javascript: Nhiều sự kiện mouseout kích hoạt
- 9. sự kiện JavaScript window.onload không được kích hoạt
- 10. sự kiện javascript trên nhiều cửa sổ
- 11. Ca cao: Sự kiện không hoạt động trên NSView không kích hoạt
- 12. Sự kiện mờ dừng sự kiện nhấp chuột hoạt động?
- 13. Jquery - Hành động kích hoạt trên mọi sự kiện
- 14. Sự kiện Onclick không kích hoạt trên jsfiddle.net
- 15. Sự kiện Javascript trên trang đăng lại
- 16. sự kiện onclick không kích hoạt sau sự kiện onchange
- 17. video sự kiện đã kết thúc không hoạt động
- 18. Sự kiện Phonegap trực tuyến/ngoại tuyến không hoạt động
- 19. Ràng buộc hộp kiểm trong loại trực tiếp không hoạt động trên sự kiện kích hoạt
- 20. C# - ASP.NET Nút bấm sự kiện không hoạt động
- 21. Sự kiện không hoạt động trên phần tử được tạo động
- 22. Sự kiện trực tiếp trên jQuery trên iPad ... tại sao nó không hoạt động?
- 23. Sự kiện chạm Javascript chậm trên Android
- 24. trướcHiển thị sự kiện không kích hoạt trên jQueryUI Datepicker
- 25. Facebook edge.create sự kiện không kích hoạt trên hộp như
- 26. jQuery: preventDefault() không hoạt động trên các sự kiện đầu vào/nhấp chuột?
- 27. sự kiện onblur không hoạt động với google chrome
- 28. Jquery Flot "plothover" sự kiện không hoạt động
- 29. Sự kiện chạm có hoạt động với SVG không?
- 30. Xử lý sự kiện jQuery .on() không hoạt động
tốt bạn không nhận được tất cả mọi thứ miễn phí (dàng), xem xét rằng trên iPad và các thiết bị Android khái niệm về nhấp chuột và nhấn đúp chuột là khác nhau hơn trên PC. Trong khi jQuery là một lựa chọn rất tốt để hỗ trợ lập trình phía máy khách trình duyệt chéo, thì nó phụ thuộc vào cách bạn sử dụng nó. Kiểm tra thông tin này để biết chi tiết: http://stackoverflow.com/questions/475674/what-javascript-events-are-available-to-webkit-on-android –
Tôi nghĩ rằng liên kết này chỉ dành cho nhắm mục tiêu người dùng Android, nhưng mục tiêu là cả hai trình duyệt máy tính thông thường, máy tính bảng và iPad. –