I am using AppleScript to open online meeting. Here among 5 tabs i should click on the green colour(current meeting) tab. Any idea how to getElementBy 'background' colour.
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)
Here at last i need to add a function to open that green tab.
I will help you with the solution. You must not credit my solution to another user, otherwise I will never help you again. Add following to the end of your 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