title: Selenium webdriver click vs action.click whats the difference?
body: <p>I was struggling with a popup dialog in a website I'm automating, for some reason it wouldn't click a button in the dialog but interacted fine with everything else fine.  It was also identifying the button without issue and I could see when watching it run that it did seem to click the button as the colour changed, so I was a bit stuck.</p>
  
  <p>My code originally looked pretty obvious: -</p>
  
  <pre><code>WebElement targetElement = waitforElement(threadSesh);
  targetElement.click();
  </code></pre>
  
  <p>But when I changed it to the following all seemed to work absolutely fine!</p>
  
  <pre><code>WebElement targetElement = waitforElement(threadSesh);
  Actions action = new Actions(threadSesh.driver);
  action.click(targetElement);
  action.perform();
  </code></pre>
  
  <p>Can anyone tell me why one method doesn't work while the other works fine?  Also, whether it helps or not, the site is built using twitter bootstrap if that makes any difference but the button itself was pretty basic, like so.</p>
  
  <pre><code>&lt;div class="modal hide fade in" style="width: 481px; margin-left: -241px; padding: 15px; display: block;" role="dialog" data-backdrop="static" data-keyboard="false" aria-hidden="false"&gt;
  ...
  &lt;div class="modal-footer"&gt;
  &lt;a id="save-EditDetails" class="btn btn-small btn-info" type="button" style="margin-right: 7px; padding-left: 15px; padding-right: 15px;" data-bind="click: ok" href="#"&gt;Save&lt;/a&gt;
  &lt;/div&gt;
  &lt;/div&gt;
  </code></pre>