Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

140
Views
Javascript offset click to the right

Using the RobotFramework, I need a click using 'Execute Javascript' which is more on the right side located.

What I have so far is this:

${ele}    Get WebElement    //input[@id='halfButton']
    Execute Javascript    arguments[0].click();     ARGUMENTS    ${ele} 

How can I change it so it clicks on the right?

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Without spelling out the solution line by line, here's the algorithm - when Selenium makes a click, it does so in the dead center of the object. That's the "catch" in this Tosca challenge - they want you to position the click to the right of that - and you have to calculate where.

SeleniumLibrary to the rescue - get the position of the button, then get its width (you need a quarter of it, more or less); then do some simple math to calculate a position to the right from its center - and click at those coordinates.

about 4 years ago · Juan Pablo Isaza Report

0

Somehow the calculations don't seem to work....

So I tried a hail shotgun method:

 CLICK ELEMENT AT COORDINATES    id=halfButton    600    100
    LOG TO CONSOLE    1
    CLICK ELEMENT AT COORDINATES    id=halfButton    600    150
    LOG TO CONSOLE    2
    CLICK ELEMENT AT COORDINATES    id=halfButton    600    100
    LOG TO CONSOLE    3
    CLICK ELEMENT AT COORDINATES    id=halfButton    610    100
    LOG TO CONSOLE    4
    CLICK ELEMENT AT COORDINATES    id=halfButton    620    100
    LOG TO CONSOLE    5
    CLICK ELEMENT AT COORDINATES    id=halfButton    630    100
    LOG TO CONSOLE    6
    CLICK ELEMENT AT COORDINATES    id=halfButton    560    100
    LOG TO CONSOLE    7
    CLICK ELEMENT AT COORDINATES    id=halfButton    570    150
    LOG TO CONSOLE    8
    CLICK ELEMENT AT COORDINATES    id=halfButton    580    100
    LOG TO CONSOLE    9
    CLICK ELEMENT AT COORDINATES    id=halfButton    590    100
    LOG TO CONSOLE    10
    CLICK ELEMENT AT COORDINATES    id=halfButton    520    100
    LOG TO CONSOLE    11
    CLICK ELEMENT AT COORDINATES    id=halfButton    530    100

Still it didn't hit the target.

I know the viewport is: 1366 by 643 (1374, 586) is out of bounds of viewport width (1366) and height (643), which was tried by x-700 x y-100.

  1. If it is not outside of viewport, I actually miss some kind of feedback "tried at location x and y".
  2. Is the x and y from the centre of the element or from the left top of the viewport?
  3. It is not visible to see where the element is clicked... I mean there's not any kind of mousetrail/mousehit location to see.
about 4 years ago · Juan Pablo Isaza Report

0

You can move a lot on the X horizontal axis, but you can't move a lot on the Y vertical axis, because the button is not very high.

therefor this worked:

 CLICK ELEMENT AT COORDINATES    id=halfButton    100    1
    LOG TO CONSOLE    1
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!