JavaScript eseguito da AppleScript per fare clic sul pulsante e inserire il testo in Safari

1

Non riesco più a eseguire JavaScript in Safari.

Ho questo script di lavoro per Chrome.

set caseID to "11111"
end tell


####################################### time #########
set myDate to date string of (current date)


set myTime to time string of (current date)

set myDateTime to myDate & " - " & myTime


set textToSave to "MY TEXT HERE
HERE
HERE
" & myDateTime

tell application "Google Chrome"
    delay 0.1
    execute front window's active tab javascript "document.getElementsByName('9.9.5.4.5.CSInfoInspector.1.1.1')[0].click();"
    delay 0.1
    execute front window's active tab javascript "document.getElementsByName('05.5.54.5.CSInfoInspector.1.1.5.41.3.7.57.1')[0].value=" & quoted form of textToSave 
    delay 0.1
    execute front window's active tab javascript "document.getElementsByName('5.5.4.5.5.CSInspector.5.1.7')[0].value=" & quoted form of caseID

end tell

Mi sono convertito in Safari qui:

set caseID to "11111"

####################################### time #########
set myDate to date string of (current date)


set myTime to time string of (current date)

set myDateTime to myDate & " - " & myTime


set textToSave to "MY TEXT HERE
HERE
HERE
" & myDateTime

tell application "Safari"
    delay 0.1
    do JavaScript "document.getElementsByName('9.9.5.4.5.CSInfoInspector.1.1.1')[0].click();" in current tab of window 1
    delay 0.1

    do JavaScript "document.getElementsByName('05.5.54.5.CSInfoInspector.1.1.5.41.3.7.57.1')[0].value=" & quoted form of textToSave in current tab of window 1

    do JavaScript "document.getElementsByName('5.5.4.5.5.CSInspector.5.1.7')[0].value=" & quoted form of caseID in current tab of window 1

end tell

Il risultato ritorna su AppleScript ma Safari non intraprende alcuna azione Risultato: "11111"

Fondamentalmente lo script suppone di fare clic su un pulsante per avere finestre pop e riempire il testo Cosa sto sbagliando?

Il mio sistema:

OS X 10.13.2 (17C202) Safari versione 11.0.2 (13604.4.7.1.5)

    
posta Kevin 12.05.2018 - 08:49
fonte

1 risposta

0

Quindi, a differenza di Chrome, dove puoi aggiungere solo poche righe con codice JS diverso, nel safari devi aggiungere per ogni codice JavaScript e menzionare il documento / scheda

ad esempio:

tell application "Safari"
    delay 0.1
    do JavaScript "document.getElementById('accountEnabledSelection').value=1" in current tab of window 1
    do JavaScript "document.getElementsByName('demo')[0].click();" in current tab of window 1


end tell
    
risposta data 14.05.2018 - 09:18
fonte

Leggi altre domande sui tag