Touch API (par exemple, Touchstart) ne fonctionne pas dans MS Edge
mon application utilise l'API Tactile pour détecter le toucher des événements en JavaScript. Exemple:
$(".element").on("touchstart", function(event){
alert("TRUE");
});
Cela fonctionne sur n'importe quel contact de l'appareil avec n'importe quel navigateur comme Android ou iOS, mais il ne fonctionne pas dans le MS Bord sur un Windows 10 Tablette avec ou sans rattachés clavier. L'API semble être pris en charge: Liste de compatibilité. Cependant, j'ai testé: 'ontouchstart' in window
et ceci renvoie false sur cet appareil. En outre mousedown
semble l'avoir tiré.
Ce qui se passe ici? Que puis-je faire pour tirer les évènements tactiles sur un Windows 10 tablette?
Je tiens à garder l'évènement uniquement pour les appareils tactiles. De commutation pour les Événements de Pointeur API comprendrait également les périphériques de Bureau et qui n'est pas ce que je veux.
source d'informationauteur dude
Vous devez vous connecter pour publier un commentaire.
pour toucher l'API, vous devez activer un drapeau sur le Bord : dans la barre d'adresse, saisissez about:flags et appuyez sur entrée. Dans la section Contact, vous pouvez activer les événements tactiles avec la liste déroulante correspondante
Avez-vous permettre de toucher personnalisé de la manipulation ? Vous pouvez le faire avec le css suivant extrait de code (sur la balise body ou tout simplement un conteneur pour geastures) :
Ensuite, touchez l'API est un webkit fonction (peut-être il ya une erreur dans CanIuse ?). IE et Edge ont une fonction similaire connu sous le Pointeur de l'API. Mais vous pouvez utiliser un polyfill de la bibliothèque comme ceci :
https://github.com/CamHenlin/TouchPolyfill
Essayez d'utiliser le
pointerdown
événement. Certains (beaucoup) plus informations. Comme vous pouvez le voir,touchstart
est déclenchée par le Bord, mais pas dans toutes les configurations, lorsqu'un clavier est connecté/appariés pour l'exemple, pas detouchstart
.