The renewal maintenance has officially ended for Progress iMacros effective November 30, 2023.
This Wiki site will also no longer be moderated from the Progress side.
Thank you again for your business and support.
Sincerely, The Progress Team
Difference between revisions of "EVENT"
(25 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | EVENT is a new | + | EVENT is a new command to automate web controls that the classic [[TAG]] command can not automate: |
* Drag & Drop | * Drag & Drop | ||
* Sliders | * Sliders | ||
* Tricky date control | * Tricky date control | ||
− | * | + | * Dynamic drop-down boxes |
− | To test the EVENT recording, | + | To test the EVENT recording, change the recording / click mode in the iMacros settings. |
− | + | EVENTS commands are collections of EVENT commands of the same type, target, etc. | |
+ | '''Note''': EVENT and EVENTS commands are not yet available in Firefox Quantum due to browser limitations. | ||
− | [[Image:enable event mode.png| | + | |
+ | ===Syntax [[Image:IMacros-icon.png|iMacros Browser]] [[Image:Ie-icon.png|IE Plug-in]] [[Image:Cr-icon.png|Chrome]]=== | ||
+ | |||
+ | EVENT TYPE=type [SELECTOR|XPATH]=localizer [BUTTON|POINT|CHAR|KEY]=[button|point|char|key] [MODIFIERS=modifiers] | ||
+ | |||
+ | ===Parameters === | ||
+ | |||
+ | * TYPE | ||
+ | *: The event type to be fired by the command. Allowed values are: | ||
+ | *:: ''Mouse events'' | ||
+ | *::* MOUSEDOWN, | ||
+ | *::* MOUSEMOVE, | ||
+ | *::* MOUSEUP, | ||
+ | *::* CLICK, | ||
+ | *::* DBLCLICK | ||
+ | *:: ''Keyboard events'' | ||
+ | *::* KEYDOWN | ||
+ | *::* KEYUP | ||
+ | *::* KEYPRESS | ||
+ | |||
+ | * SELECTOR or XPATH | ||
+ | *: The query string to localize the target element on the page. This can be either an XPATH expression, or a CSS selectors query | ||
+ | |||
+ | * BUTTON, POINT, CHAR, or KEY | ||
+ | *: It depends on which event type is being used. Mouse events need a BUTTON or a POINT. Keyboard events need CHAR or KEY | ||
+ | *:: MOUSEDOWN, CLICK and DBLCLICK need a BUTTON (0, meaning default or left mouse button, 1 for the middle mouse button, or 2 for the secondary or right mouse button) | ||
+ | *:: MOUSEUP and MOUSEMOVE use a POINT like in "(245,186)" | ||
+ | *:: KEYDOWN, KEYUP, and KEYPRESS use CHAR (printable characters, like "a" or "Q") or KEY (non-printable keys, like arrow up as in KEY=40) | ||
+ | |||
+ | * MODIFIERS | ||
+ | *: A combination of CTRL, ALT, SHIFT, META. Keys held pressed during the mouse events. Separate multiple modifiers with a comma, e.g. MODIFIERS="ctrl,shift". | ||
+ | |||
+ | === Remarks === | ||
+ | |||
+ | * Keyboard events using KEY or MODIFIERS are only supported in iMacros for Firefox | ||
+ | * EVENTS commands are collections of EVENT commands of the same type and on the same target element, so moving the mouse over a path records one single EVENTS command, where the points defining the path are given as a list of points: POINTS="(27,154),(26,154),(25,154)" | ||
+ | * The ability to send a multi-key combination (CHAR with MODIFIERS) in order to invoke a shortcut key defined by the web page does not work with any version of iMaccros. | ||
+ | |||
+ | In iMacros for Firefox, using MODIFIERS on the EVENT command works only to invoke shortcuts defined by the browser. For example, sending a Ctrl+O with the following command will invoke the browser's File - Open functionality: | ||
+ | |||
+ | EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" CHAR="o" MODIFIERS="ctrl" | ||
+ | |||
+ | However, if Ctrl-O is defined by the web page to perform some other function, that functionality is not invoked by the EVENT command, it only invokes the browser's shortcut and displays the file open dialog. | ||
+ | |||
+ | Single-key web page shortcuts can be invoked by iMacros in the iMacros browser, Firefox, and IE. For example, if the web page defines the letter 'q' as a shortcut for some functionality, the following will work in the aforementioned browsers: | ||
+ | |||
+ | EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" CHAR="q" | ||
+ | |||
+ | It is also possible to use a DirectScreen command in the iMacros browser and IE to invoke a single-key shortcut: | ||
+ | |||
+ | DS CMD=KEY X=0 Y=0 CONTENT=q | ||
+ | |||
+ | === Examples === | ||
+ | |||
+ | URL GOTO=http://demo.imacros.net/TestPages/ForceDirectedGraph.aspx | ||
+ | FRAME NAME=iframeFDgraph | ||
+ | EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" BUTTON=0 | ||
+ | EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINTS="(559,222),(558,222),(557,222),(555,223), (554,224),(551,224)" | ||
+ | EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINTS="(546,227),(536,232),(534,234),(523,243),(515,255),(512,259),(510,263),(500,282),(499,285),(493,300),(492,304),(492,306),(488,321),(487,323),(487,324),(487,326),(486,327),(483,336)" | ||
+ | EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>line:nth-of-type(4)" POINTS="(481,338),(481,339)" | ||
+ | EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINTS="(480,340),(479,342),(475,347),(475,348)" | ||
+ | EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINT="(474,350)" | ||
+ | EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINT="(473,351)" | ||
+ | EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINTS="(472,353),(470,355),(469,357),(468,359),(467,360),(466,360)" | ||
+ | EVENT TYPE=MOUSEUP SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINT="(466,360)" | ||
+ | |||
+ | Use the CLEAR command so that times of website response measurements are not influenced by using local cache data: | ||
+ | |||
+ | URL GOTO=https://moqups.com/#!/ | ||
+ | EVENT TYPE=MOUSEDOWN SELECTOR="#preview-svg>svg>svg>svg>foreignObject>DIV" BUTTON=0 | ||
+ | EVENTS TYPE=MOUSEMOVE SELECTOR="#preview-svg>svg>svg>svg>foreignObject>DIV" POINTS="(131,254),(132,254),(134,254),(136,255),(139,256),(142,256),(147,256),(153,257),(160,257),(169,258),(190,258)" | ||
+ | EVENT TYPE=MOUSEMOVE SELECTOR="#containment" POINT="(204,257)" | ||
+ | EVENT TYPE=MOUSEUP POINT="(386,254)" | ||
+ | |||
+ | === Enable the EVENT recording mode === | ||
+ | [[Image:enable event mode.png|center|thumb|450px|Enable the EVENT recording mode]] | ||
+ | |||
+ | === Record drag & drop events === | ||
+ | [[Image:drag_drop.png|center|thumb|450px|Record drag & drop events]] | ||
+ | |||
+ | === Record date and time selection === | ||
+ | |||
+ | [[Image:datepicker.png|center|thumb|450px|Record date and time selection ("date picker")]] | ||
+ | |||
+ | === Record the selection from within an "ajaxy" drop-down === | ||
+ | [[Image:ajax dropdown.png|center|thumb|450px|Record the selection from within an "ajaxy" drop-down]] | ||
+ | |||
+ | ===Related Forum Posts === | ||
+ | * [http://forum.imacros.net/viewtopic.php?f=11&t=21494#p57775 Feedback and Issues on EVENT recording mode] | ||
+ | * [http://forum.imacros.net/viewtopic.php?f=11&t=26355#p69704 Double Modifiers in Event Mode?] | ||
+ | |||
+ | ===See Also === | ||
+ | |||
+ | [[TAG]] [[DS]] |
Revision as of 13:51, 3 July 2018
EVENT is a new command to automate web controls that the classic TAG command can not automate:
- Drag & Drop
- Sliders
- Tricky date control
- Dynamic drop-down boxes
To test the EVENT recording, change the recording / click mode in the iMacros settings.
EVENTS commands are collections of EVENT commands of the same type, target, etc.
Note: EVENT and EVENTS commands are not yet available in Firefox Quantum due to browser limitations.
Syntax
EVENT TYPE=type [SELECTOR|XPATH]=localizer [BUTTON|POINT|CHAR|KEY]=[button|point|char|key] [MODIFIERS=modifiers]
Parameters
- TYPE
- The event type to be fired by the command. Allowed values are:
- Mouse events
- MOUSEDOWN,
- MOUSEMOVE,
- MOUSEUP,
- CLICK,
- DBLCLICK
- Keyboard events
- KEYDOWN
- KEYUP
- KEYPRESS
- Mouse events
- The event type to be fired by the command. Allowed values are:
- SELECTOR or XPATH
- The query string to localize the target element on the page. This can be either an XPATH expression, or a CSS selectors query
- BUTTON, POINT, CHAR, or KEY
- It depends on which event type is being used. Mouse events need a BUTTON or a POINT. Keyboard events need CHAR or KEY
- MOUSEDOWN, CLICK and DBLCLICK need a BUTTON (0, meaning default or left mouse button, 1 for the middle mouse button, or 2 for the secondary or right mouse button)
- MOUSEUP and MOUSEMOVE use a POINT like in "(245,186)"
- KEYDOWN, KEYUP, and KEYPRESS use CHAR (printable characters, like "a" or "Q") or KEY (non-printable keys, like arrow up as in KEY=40)
- It depends on which event type is being used. Mouse events need a BUTTON or a POINT. Keyboard events need CHAR or KEY
- MODIFIERS
- A combination of CTRL, ALT, SHIFT, META. Keys held pressed during the mouse events. Separate multiple modifiers with a comma, e.g. MODIFIERS="ctrl,shift".
Remarks
- Keyboard events using KEY or MODIFIERS are only supported in iMacros for Firefox
- EVENTS commands are collections of EVENT commands of the same type and on the same target element, so moving the mouse over a path records one single EVENTS command, where the points defining the path are given as a list of points: POINTS="(27,154),(26,154),(25,154)"
- The ability to send a multi-key combination (CHAR with MODIFIERS) in order to invoke a shortcut key defined by the web page does not work with any version of iMaccros.
In iMacros for Firefox, using MODIFIERS on the EVENT command works only to invoke shortcuts defined by the browser. For example, sending a Ctrl+O with the following command will invoke the browser's File - Open functionality:
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" CHAR="o" MODIFIERS="ctrl"
However, if Ctrl-O is defined by the web page to perform some other function, that functionality is not invoked by the EVENT command, it only invokes the browser's shortcut and displays the file open dialog.
Single-key web page shortcuts can be invoked by iMacros in the iMacros browser, Firefox, and IE. For example, if the web page defines the letter 'q' as a shortcut for some functionality, the following will work in the aforementioned browsers:
EVENT TYPE=KEYPRESS SELECTOR="HTML>BODY" CHAR="q"
It is also possible to use a DirectScreen command in the iMacros browser and IE to invoke a single-key shortcut:
DS CMD=KEY X=0 Y=0 CONTENT=q
Examples
URL GOTO=http://demo.imacros.net/TestPages/ForceDirectedGraph.aspx FRAME NAME=iframeFDgraph EVENT TYPE=MOUSEDOWN SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" BUTTON=0 EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINTS="(559,222),(558,222),(557,222),(555,223), (554,224),(551,224)" EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINTS="(546,227),(536,232),(534,234),(523,243),(515,255),(512,259),(510,263),(500,282),(499,285),(493,300),(492,304),(492,306),(488,321),(487,323),(487,324),(487,326),(486,327),(483,336)" EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>line:nth-of-type(4)" POINTS="(481,338),(481,339)" EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINTS="(480,340),(479,342),(475,347),(475,348)" EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINT="(474,350)" EVENT TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg" POINT="(473,351)" EVENTS TYPE=MOUSEMOVE SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINTS="(472,353),(470,355),(469,357),(468,359),(467,360),(466,360)" EVENT TYPE=MOUSEUP SELECTOR="HTML>BODY>svg>g:nth-of-type(10)>circle" POINT="(466,360)"
Use the CLEAR command so that times of website response measurements are not influenced by using local cache data:
URL GOTO=https://moqups.com/#!/ EVENT TYPE=MOUSEDOWN SELECTOR="#preview-svg>svg>svg>svg>foreignObject>DIV" BUTTON=0 EVENTS TYPE=MOUSEMOVE SELECTOR="#preview-svg>svg>svg>svg>foreignObject>DIV" POINTS="(131,254),(132,254),(134,254),(136,255),(139,256),(142,256),(147,256),(153,257),(160,257),(169,258),(190,258)" EVENT TYPE=MOUSEMOVE SELECTOR="#containment" POINT="(204,257)" EVENT TYPE=MOUSEUP POINT="(386,254)"