No conozco ninguna forma de obtener la segunda aplicación o ventana más avanzada con AppleScript, aparte de algo como esto:
delay 0.3 -- time to release modifier keys if the script is run with a shortcut
tell application "System Events"
set p to process 1 where it is frontmost
set visible of p to false
delay 0.01
key code 121 -- 121 = page down, 116 = page up
set frontmost of p to true
end tell
Sin embargo, hace que las ventanas ocultas y activadas parpadeen.
Con los navegadores puedes usar window.scrollBy ():
tell application "Safari" to tell document 1
do JavaScript "window.scrollBy(0,(window.innerHeight-20))"
end tell
tell application "Google Chrome" to tell active tab of window 1
execute javascript "window.scrollBy(0,(window.innerHeight-20))"
end tell
Otra opción sería simular presionando ⌃F4, retroceder o retroceder página, y ⌃⇧F4, por ejemplo, usando KeyRemap4MacBook :
<autogen>__KeyToKey__ KeyCode::CURSOR_UP, ModifierFlag::FN | ModifierFlag::CONTROL_L | ModifierFlag::NONE, KeyCode::F4, ModifierFlag::CONTROL_L, KeyCode::PAGEUP, KeyCode::F4, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L</autogen>
<autogen>__KeyToKey__ KeyCode::CURSOR_DOWN, ModifierFlag::FN | ModifierFlag::CONTROL_L | ModifierFlag::NONE, KeyCode::F4, ModifierFlag::CONTROL_L, KeyCode::PAGEDOWN, KeyCode::F4, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L</autogen>
También provoca un error visual, y ⌃F4 a veces selecciona ventanas de aplicaciones ocultas.