Estoy usando AppleScript para abrir una reunión en línea. Aquí, entre 5 pestañas, debo hacer clic en la pestaña de color verde (reunión actual). Cualquier idea de cómo getElementBy color de 'fondo'.
to clickClassName(theClassName, elementnum) tell application "Safari" do JavaScript "document.getElementsByClassName('" & theClassName & "')[" & elementnum & "].click();" in document 1 end tell end clickClassName tell application "Safari" activate open location "https://myclass.lpu.in/" delay 5 tell application "System Events" to tell process "Safari" keystroke "USERNAME" delay 0.2 keystroke tab delay 0.2 keystroke "PASSWORD" delay 1 keystroke return delay 5 end tell end tell clickClassName("btn stretched-link text-white w-100", 0)Aquí, por fin, necesito agregar una función para abrir esa pestaña verde.
Te ayudaré con la solución. No debe acreditar mi solución a otro usuario, de lo contrario nunca lo ayudaré nuevamente. Agregue lo siguiente al final de su script.
set classNames to {"fc-time-grid-event fc-event fc-start fc-end", "fc-time-grid-event fc-event fc-start fc-end fc-time-grid-event-inset"} set notFounded to true tell application "Safari" repeat with className in classNames if notFounded then -- count all elements of indicated class set theCount to (do JavaScript "document.getElementsByClassName(className).length;" in document 1) as integer if theCount > 0 then -- find element with "background: green" and click it repeat with i from 0 to theCount - 1 set theStyle to (do JavaScript "(document.getElementsByClassName(className)[" & i & "]).getAttribute('style');" in document 1) as text if theStyle contains "background: green;" then do JavaScript "(document.getElementsByClassName(className)[" & i & "]).click();" in document 1 set notFounded to false exit repeat end if end repeat end if end if end repeat end tell