comment intercepter le clic sur le Bouton à l'intérieur de UIWebview sur IOS?
J'ai un formulaire HTML qui a certains domaines qui je suis, d'ouverture à l'intérieur d'une UIWebview. Sur clic d'un bouton particulier, je veux faire une app à l'action.
L'approche que j'utilise maintenant est sur le clic du bouton de redirection de la page à un mannequin URL. Je humer l'URL en utilisant le délégué de la méthode "shouldStartLoadWithRequest" et d'arrêter la redirection. Ensuite, je fais de mon événement personnalisé (capture d'image et upload) et puis continuer. Cela semble être un vilain hack. De toute façon je peux directement brancher dans l'événement click du bouton plutôt que d'une page de redirection?
Mise à JOUR
Il semble y avoir aucun moyen de l'installation d'un délégué de la méthode qui se déclenche quand un JS fonction est appelée lors du clic sur le bouton. La seule façon de le faire est d'utiliser l'URL renifler méthode mentionnée ci-dessus. Cela a été expliqué en détail par joern ci-dessous, je vais donc accepter sa réponse.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez effectuer les opérations suivantes:
Dans votre code HTML
Dans votre UIWebViewDelegate
J'ai ajouté de la "capture" de l'URL de votre bouton de sorte que vous pouvez distinguer entre plusieurs boutons qui déclenchent des actions différentes (si vous voulez):
// do capture action
commentaire avec un appel à une fonction javascript dans le HTML, qui soumet le formulaire.YES
au lieu deNO
après avoir capturé l'action. Ensuite, le formulaire sera soumis normalement comme si rien ne s'était passé. Pas besoin d'appeler une fonction javascript.if (navigationType == .FormSubmitted)
et similaire fonctionne bien ....... MERCI ENCORE, VRAIMENTCe code:
ne fonctionne pas pour moi.
J'ai ajouté "dans des applis://capture" dans mon code javascript pour fonction d'événement
Aussi j'utilise le UIWebViewDelegate et Il fonctionne pour iOS 8, 9.
Pour swift 4.2
Bouton code HTML de côté:
UIWebViewDelegate méthode: