Je veux que AppleScript fait défiler une fenêtre tout en place. p>
J'ai essayé la clé de page, la clé d'accueil et j'ai essayé de chercher un moyen de faire défiler les capacités de défilement intégrées de la fenêtre, mais je n'ai pas encore été incapable de déplacer le défilement défilé. position du tout. p>
3 Réponses :
Fondamentalement, utilisez un mais pour moi cela ne fonctionne pas. La bonne nouvelle est que vous pouvez utiliser les codes de clé à la place. Je suggère d'utiliser l'excellent libre Codes de clé complète Application pour les lire, bien qu'il soit un peu délicat Pour le laisser lire deux touches enfoncées simultanément. p> Les codes de clé pour les touches de la flèche FN kbd> + sont comme suit: p> Page Up: fn kbd> + clé up kbd>: page bas: fn KBD> + Touche Down kbd>: Accueil: fn kbd> + touche gauche kbd> : fin: fn kbd> + clé de droite kbd>: Ainsi, par exemple si vous avez eu une page longue dans Safari, et que vous souhaitez faire défiler à sa fin, utilisez P> Informations sur l'application "Événements système" Code> pour envoyer des clés et des codes de clé.
En théorie, vous pouvez utiliser ce qui suit:
code de clé 116 code> p>
code de clé 121 code> p>
code de clé 115 code> p>
code clé 119 code>
tell application "System Events"
tell application "Safari" to activate
â to see the animation, we wait a moment:
delay 0.5
key code 119
end tell
Fantastique. Merci. J'ai essayé beaucoup de choses, dont beaucoup étaient similaires à votre solution, mais ils n'étaient pas tout à fait corrects. Cela fonctionne comme un charme.
Malheureusement, l'utilitaire de clavier référencé est obsolète (écrit pour la plate-forme PowerPC). Code de clé B> ( iTunes.Apple. COM / US / APP / CODES DE TOLE / ID414568915? MT = 12 ) est une alternative qui est toujours maintenue (et est également gratuite).
L'alternative à l'envoi de KeysTrokes consiste à utiliser script de l'interface graphique forte> .
Aussi: p> Les scripts de l'interface graphique de l'interface graphique nécessitent que Accès aux appareils d'assistance forts> être activé; Activation nécessite des privilèges d'administration: P>
Déterminer les bonnes cibles d'élément d'interface utilisateur peut être non triviale et fastidieuse forte>; Utilisation de l'inspecteur Les parchemins suivants
indiquer l'application "Événements système" pour définir des éléments UI activés à True Code> (privilèges d'administration requis) LI>
Inversez l'application "Événements système" pour obtenir des éléments UI activés code> Signaler em> si l'accès est activé ou non. Li>
ul> li>
Inspecteur d'accessibilité code> fourniture avec
xcode code> aide. Les noms de classe rapportés par cet utilitaire correspondent aux classes code> UI code> contenues dans le dictionnaire code> système système code>; E. g.,
Axsplittgroup code> correspond à
groupe de séparateur code>. p> li>
ul>
Safari 6.0.3 Code> S Fenêtre avant en haut (Accès aux périphériques d'assistance doit être activé): P>
tell application "System Events"
# Use Accessibility Inspector to find the desired target.
tell front window of process "Safari"
tell scroll bar 1 of scroll area 1 of group 1 of group 1 of group 2
set value of attribute "AXValue" to 0 # Scroll to top.
end tell
end tell
end tell
Avec les navigateurs Vous pouvez également utiliser JavaScript:
tell application "Safari" to tell document 1 do JavaScript "window.scroll(0,0)" end tell tell application "Google Chrome" to tell active tab of window 1 execute javascript "window.scroll(0,0)" end tell
Bien que cela ne fonctionne que pour les deux applications de navigateur indiqués, il présente deux avantages: il est plus robuste que l'approche d'envoi de frappe de frappe, et elle n'exige pas l'autorisation d'accès assistif, contrairement à l'approche de script de l'interface graphique.