Come identificare la finestra di dialogo degli avvisi Javascript di Safari usando AppleScript?

2

In un sito web particolarmente 'fastidioso', una finestra di dialogo si apre per bloccare (o coprire) la voce automatica della casella di immissione userid.

Ho usato il seguente codice tentando di ottenere un riferimento & chiudere questa finestra, ma non ha avuto successo.

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

Che altro è disponibile per trovare e chiudere la casella di avviso?

Modifica: il key code 36 a volte chiude l'avviso e altre volte, quando non è presente, invierà la pagina troppo presto.

    
posta David C 18.07.2014 - 21:24
fonte

1 risposta

4

Se si visualizzava una finestra di avviso con un pulsante OK, questo codice AppleScript lo chiudeva.

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

Probabilmente dovrai personalizzarlo per adattarlo alla tua situazione esatta. Se la finestra di avviso appare con un titolo, puoi specificarlo tutti come di seguito.

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

Un'altra opzione sarebbe identificare l'avviso usando "finestra frontale" come nell'esempio seguente (supponendo che l'avviso sia la finestra frontale).

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

Spero che questo aiuti.

    
risposta data 18.07.2014 - 23:51
fonte

Leggi altre domande sui tag