2 votes

Comment identifier le dialogue d'alerte Javascript de Safari à l'aide d'AppleScript ?

Sur un site Web particulièrement "embêtant", une boîte de dialogue s'affiche pour bloquer (ou couvrir) la saisie automatique du champ de saisie de l'identifiant.

J'ai utilisé le code suivant pour tenter d'obtenir une référence et de fermer cette fenêtre, mais sans succès.

tell application "System Events"
    key code 15 using {command down}
    key code 36        // return key

end tell

tell application "System Events" to tell process "Safari"
    set numSheets to (count of sheets) & " sheets" as text       // 0 sheets
end tell

set numDocuments to (count of documents) & " documents" as text  // 1 documents
set numWindows to (count of windows) & " windows" as text        // 1 sheets

Quelles sont les autres possibilités pour trouver et fermer cette boîte d'alerte ?

Edit : Le key code 36 fermera parfois l'alerte, et d'autres fois, lorsqu'il n'est pas présent, soumettra la page trop tôt.

4voto

rpetrich Points 25769

Si une boîte de dialogue d'alerte apparaît avec un bouton OK, ce code AppleScript la fermera.

tell application "System Events" to tell process "Safari"
    if exists (button "OK" of window 1) then
        click (button "OK" of window 1)
    end if
end tell

Vous devrez probablement adapter ce système à votre situation exacte. Si la boîte de dialogue d'alerte apparaît avec un titre, vous pouvez le spécifier comme ci-dessous.

tell application "System Events" to tell process "Safari"
    if exists (button "OK" of window "Java applet missing") then
        click (button "OK" of window "Java applet missing")
    end if
end tell

Une autre option serait d'identifier l'alerte en utilisant "fenêtre avant" comme dans l'exemple suivant (en supposant que l'alerte est la fenêtre avant).

tell application "System Events" to tell process "Safari"
    if exists (button "OK" of front window) then
        click (button "OK" of front window)
    end if
end tell

J'espère que cela vous aidera.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X