In OS X El Capitan, quando fai clic su Cancella cronologia ... nel menu Cronologia, fa apparire Cancella cronologia come finestra di dialogo modale o come foglio attivo su una finestra, come illustrato nelle immagini nella parte inferiore di questo risposta, e il codice AppleScript sotto lo gestisce in entrambi i casi.
Il codice è scritto con l'ipotesi che appare come una finestra di dialogo e se non riesce a elaborare come una finestra di dialogo, quindi on error
gestore lo elabora come un foglio.
Questo codice , direttamente sotto, essenzialmente replica ciò che il tuo codice ha fatto in OS X Yosemite, sebbene regolato per l'uso in OS X El Capitan, sans il comando delay
che puoi aggiungere se vuoi.
tell application "Safari" to activate
tell application "System Events"
click menu item "Clear History…" of menu 1 of menu bar item "History" of menu bar 1 of process "Safari"
try
click button "Clear History" of front window of process "Safari"
on error
try
click button "Clear History" of sheet 1 of window 1 of process "Safari"
end try
end try
end tell
Per interagire con la lista sul pulsante Cancella pop-up, per quanto tempo della cronologia cancellare, il seguente esempio di codice lo indirizzi.
Poiché può apparire in due modi diversi, sfortunatamente richiede due set separati di code simili e entrambe le sezioni di code che circondano la lista "Clear ..." devono essere mantenuto manualmente e sincronizzato se / quando si utilizza quel segmento codice .
Nota: ci sono 10 righe di code commentate, precedute da --
, relative all'elenco "Cancella ...", 5 righe in ogni raggruppamento di codice . Puoi cambiare il valore corrente per una delle 4 scelte decommentando le righe click pop up button 1 of window 1 of process "Safari"
e click pop up button 1 of sheet 1 of window 1 of process "Safari"
di codice , quella in ogni sezione, e poi solo 1 di l'altro 4 alla volta, il simile in ogni sezione. Ciò significa che solo 4 righe in totale devono essere decommentate, 2 in ciascuna sezione, 1 per fare clic sul pulsante popup e l'altra per quanto tempo della cronologia vuoi cancellare. I commenti che ho aggiunto, preceduti da -- #
, all'interno del codice dovrebbero essere auto-esplicativi.
tell application "Safari"
activate
end tell
tell application "System Events"
click menu item "Clear History…" of menu 1 of menu bar item "History" of menu bar 1 of process "Safari"
try
-- #
-- # NOTE: Keep this block of commented out code in sync with the similar block below!
-- #
-- # If you want to change the value of the "Clear ..." list, then uncomment the line of code directly below this comment.
-- #
-- click pop up button 1 of window 1 of process "Safari"
-- #
-- # If you've uncommented the line of code directly above this comment, then uncomment only 1 of the 4 lines of code below.
-- #
-- click menu item "the last hour" of menu 1 of pop up button 1 of window 1 of process "Safari"
-- click menu item "today" of menu 1 of pop up button 1 of window 1 of process "Safari"
-- click menu item "today and yesterday" of menu 1 of pop up button 1 of window 1 of process "Safari"
-- click menu item "all history" of menu 1 of pop up button 1 of window 1 of process "Safari"
-- #
click button "Clear History" of front window of process "Safari"
on error
try
-- #
-- # NOTE: Keep this block of commented out code in sync with the similar block above!
-- #
-- # If you want to change the value of the "Clear ..." list, then uncomment the line of code directly below this comment.
-- #
-- click pop up button 1 of sheet 1 of window 1 of process "Safari"
-- #
-- # If you've uncommented the line of code directly above this comment, then uncomment only 1 of the 4 lines of code below.
-- #
-- click menu item "the last hour" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari"
-- click menu item "today" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari"
-- click menu item "today and yesterday" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari"
-- click menu item "all history" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari"
-- #
click button "Clear History" of sheet 1 of window 1 of process "Safari"
end try
end try
end tell
Questo codice viene eseguito molto velocemente, tuttavia puoi inserire alcuni delay
comandi , se necessario, se vuoi vedere meglio cosa sta succedendo mentre la Cronologia viene cancellata.
Nelle immagini sottostanti, una con la freccia rossa indica le 10 righe di code commentate, precedute da --
, relative alla lista "Cancella ..." tratta . Per cambiare ad esempio "l'ultima ora" in uno degli altri valori , qui rimuovi le righe commentate appropriate del codice .
.
Come foglio:
Comefinestradidialogo: