Chrome: click()

Hi,

I have a site that works with IE.
Now I am trying to make it work with Chrome and FireFox.

I see that the element.click()  (in JavaScript)  doesn't work in chrome.
Is there another way to do it?


VapiSoftAsked:
Who is Participating?
 
flexiwebswConnect With a Mentor Commented:
i think other browsers dont like the fact thats its an image, it thinks you cant click it.
0
 
flexiwebswCommented:
Ive just tried it in chrome, firefox, opera and ie and it works fine in all browsers, whats the piece of code that your using? maybe theres an error that chrome picks up.
0
 
flexiwebswCommented:
ive tried this axample and it works fine.
<input type="checkbox" onClick="document.getElementById('theSubmitButton').click();">Check the box to simulate a button click
<br>
<input type="button" name="theSubmitButton" id="theSubmitButton" value="Button" onClick="alert('The button was clicked.');">

Open in new window

0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

 
VapiSoftAuthor Commented:
I think you misunderstood the question.

onclick event works fine.

the method element.click() that you can execute a click on an element (in JavaScript)  doesn't work.
0
 
flexiwebswCommented:
yes i completely understood your question, in the example i posted if you click on the checkbox then it simulates a click on the button which runs the alert coded on the button onclick parameter.
0
 
VapiSoftAuthor Commented:
You are right.
It does work when I click on a button (as in your example).
But it doesn't work when I click on the expand (+) icon in a 'tree-table'.

+ ...
+....
I added an alert before the click and after the click.
It shows only the first alert.
0
 
flexiwebswCommented:
if you post your source code for that area, i will have a look and fix it for you.
0
 
VapiSoftAuthor Commented:
the site is:
http://www.vapisoft.com/MyTree/main.php

click on the 'Comments' at the bottom.
Then click on 'Maximize'.
The click on 'Open All' (at the top).
It works in IE but not in Chrome.
It activates the attached function.

function openAll(checked,table)
{
 var do_again=true;
 var name="minus";
 if (checked) name="plus";
 
 while (do_again)
 {
  do_again=false;
  var allPageTags=document.getElementsByTagName("*");
  for (var i=0; i<allPageTags.length; i++) 
  {  
   if (allPageTags[i].className== 'expandimg') 
   { 
    var src=allPageTags[i].src;
    if (src.indexOf(name) > 0)
    {
     if (allPageTags[i].id.match('^'+table))
     {
	  var obj=allPageTags[i];
	  obj.click();
	  do_again=true;
     }
    }
   }
  } 
 }
}

Open in new window

0
 
flexiwebswCommented:
you get the error

'allPageTags[i].click is not a function'

othher browsers dont detect the image.clicl(); as a function
0
 
VapiSoftAuthor Commented:
so what can I do?
0
 
VapiSoftAuthor Commented:
I don't have a solution, but thanks for the help.
0
 
flexiwebswCommented:
try this, it works fine

you willl have to replace your image with an input tag, but set the type to image, it works fine in all browsers.
<input type="checkbox" onClick="document.getElementById('theSubmitButton').click();">Check the box to simulate a button click
<br>
<input type="image" src="http://www.vlerickalumni.com/images/icons/plusIcon.gif" name="theSubmitButton" id="theSubmitButton" onClick="alert('The button was clicked.'); return false;">

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.