Problema: Javascript click automatico por coordenadas

Estado
No está abierto para más respuestas.

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
Hola a todos!

Tengo el siguiente problema a ver si alguien me puede dar un poco de luz en el asunto.

El propósito es que al entrar a una pagina web, al cabo de unos segundos se haga un click (click de mouse) automáticamente sobre las coordenadas X Y deseadas.

Por ahora lo he conseguido hacer sobre un botón de un formulario:

Código:
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script> $(document).ready(function(){ 
setTimeout(clickbutton,5000); function clickbutton() { 
$("#botonEnviar").click(); } }); 
</script>

Código:
<form action="http://www.xxx.com"> <input type="submit" id="botonEnviar" value="enviar formulario"> </form>



Pero no me sirve, pero como he visto que esto funciona y también que se pueden obtener la coordenadas mediante javascript, tal vez se pueda hacer el click automatico de ese modo.

A ver si alguien sabe algo, muchas gracias!
 

maestrodellaves

Diamante
Usuario de Bronce
Mensajes
2,830
Puntuación de reacción
5
Exactamente... ¿Qué es lo que se encuentra dentro de dichas coordenadas?
 

maestrodellaves

Diamante
Usuario de Bronce
Mensajes
2,830
Puntuación de reacción
5
Prueba a cambiar esto:

$("#botonEnviar").click(); } });

Por alguna de estas 3 opciones:

$("#div").click(); } });

$("tr:even").click(); } });

$("tr:eek:dd").click(); } });

En el caso de no funcionar, mira a ver si ese código lleva tambien algún id
 

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
Prueba a cambiar esto:

$("#botonEnviar").click(); } });

Por alguna de estas 3 opciones:

$("#div").click(); } });

$("tr:even").click(); } });

$("tr:eek:dd").click(); } });

En el caso de no funcionar, mira a ver si ese código lleva tambien algún id


No me funciona ninguna de las tres.

Me he confundido en una cosa, el script no está dentro del div (aunque si que tiene ID).

En cuanto a lo de las coordenadas no es posible?
 

maestrodellaves

Diamante
Usuario de Bronce
Mensajes
2,830
Puntuación de reacción
5
Posible si que creo que es, aunque si tiene id tan sólo tendrías que cambiar botonEnviar por dicha id y tal vez funcione...
Lo de las coordenadas lo he visto en algún sitio, pero ya me tengo que ir a la cama.
Busca Jquery en google y empápate.
 

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
Si son sobre unas coordenadas ya conocidas, puedes probar con esto: Edit fiddle - JSFiddle


Con eso puedo dar una respuesta a partir de las coordenadas del click que hace el visitante.

Yo necesitaría que el click fuera automático sobre unas coordenadas ya conocidas, como en el ejemplo que puse. Se puede hacer a partir de eso? (disculpa la ignorancia)
 

onuland

Cobre
Usuario de Bronce
Mensajes
422
Puntuación de reacción
0
No, con eso haces click donde le digas; en el ejemplo: simulateClick(70, 30), hará click en la posicion 70,30.

Para más info, pregunta a google por 'auto click coordinates javascript'
 

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
No, con eso haces click donde le digas; en el ejemplo: simulateClick(70, 30), hará click en la posicion 70,30.

Para más info, pregunta a google por 'auto click coordinates javascript'

Gracias por tu tiempo,

Segun lo que he visto tengo esto:

Código:
<html lang="es">
<head>
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script> 
<script>
function simulateClick(x, y) {
     jQuery(document.elementFromPoint(x, y)).click();
 }
 simulateClick(100, 250);
 
</script>


</head> 
<body> 

<div><a href="http://www.google.es"><img src="back1.jpg" width="1920" height="1089" border="0"></a>

</div>
</body> 
</html>


Es el ejercicio de pruebas, hay una imagen muy grande en la pagina enlazada a google, para no fallar las coordenadas durante las pruebas.

Esto debería hacer click en la imagen al abrir la pagina? Estoy haciendo algo mal? Hay algo mal en la sintaxis?


Gracias de verdad que estoy un poco perdido con este asunto!
 

onuland

Cobre
Usuario de Bronce
Mensajes
422
Puntuación de reacción
0
El siguiente código carga una imagen y a continuación te llevará a este foro (foro20.com), no sé si te valdrá:
HTML:
<html lang="es">
<head>

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script> 
<script>
function simulateClick(x, y) {
    var clickEvent = document.createEvent('MouseEvents');
    clickEvent.initMouseEvent('click', true, true, window, 0, 0, 0, x, y, false, false, false, false, 0, null);
    document.elementFromPoint(x, y).dispatchEvent(clickEvent);
}
</script>

</head>
 
<body> 
  <div>
    <a href="http://www.foro20.com"><img src="http://juanst.com/wp-content/uploads/2013/07/entrar-boton.png" width="320" height="161" border="0">
    </a>
  </div>
  <script>simulateClick(150, 80); </script>
</body> 
</html>
Gracias por tu tiempo,

Segun lo que he visto tengo esto:

Código:
<html lang="es">
<head>
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script> 
<script>
function simulateClick(x, y) {
     jQuery(document.elementFromPoint(x, y)).click();
 }
 simulateClick(100, 250);
 
</script>


</head> 
<body> 

<div><a rel="nofollow" href="http://www.google.es"><img src="back1.jpg" width="1920" height="1089" border="0"></a>

</div>
</body> 
</html>


Es el ejercicio de pruebas, hay una imagen muy grande en la pagina enlazada a google, para no fallar las coordenadas durante las pruebas.

Esto debería hacer click en la imagen al abrir la pagina? Estoy haciendo algo mal? Hay algo mal en la sintaxis?


Gracias de verdad que estoy un poco perdido con este asunto!
 
Última edición:

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
Muchas gracias,

Tu ejemplo me funciona perfectamente pero cuando lo voy a poner en el caso real no hace el clic aparentemente.

Es posible que no funcione sobre un elemento flash? Es un reproductor de vídeo tipo youtube.
 

onuland

Cobre
Usuario de Bronce
Mensajes
422
Puntuación de reacción
0
Prueba a poner una pausa de unos segundos antes de enviar el 'click'

Enviado desde el TAT
 

Rostex

Piedra
Usuario de Piedra
Mensajes
36
Puntuación de reacción
0
Te estas fijando que el Id al que apuntas sea el correcto si no siempre puedes hacerlo por Tag
 

onuland

Cobre
Usuario de Bronce
Mensajes
422
Puntuación de reacción
0
Tío, lo difícil ya te lo he dao. Cúrratelo un poco, que tienes 7 mensajes y los siete son en este hilo (te has dado por vencido en 21 minutos que distan desde mi posible solución a tu último mensaje)
 

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
Tío, lo difícil ya te lo he dao. Cúrratelo un poco, que tienes 7 mensajes y los siete son en este hilo (te has dado por vencido en 21 minutos que distan desde mi posible solución a tu último mensaje)

No, es que lo de retrasar el click unos segundos ya lo estuve probando ayer por la noche, igual que ya tenia funcionando por coordenadas encima de imágenes y botones pero no encima del reproductor de vídeo. Aunque te agradezco tu ejemplo de la imagen.

No es que me diera por vencido en 21 minutos.. gracias de todos modos.
 
Mensajes
497
Puntuación de reacción
1
hola he probado el code de onuland y funciona, pero no con iframe ni tampoco con publicidad, solo con imaganes con link
 

rascayu

Piedra
Usuario de Piedra
Mensajes
39
Puntuación de reacción
0
Prueba a poner una pausa de unos segundos antes de enviar el 'click'

Enviado desde el TAT

Ya conseguí retrasar el click pero cuando lo sitúo sobre el reproductor de vídeo no hace nada.

Mi vídeo es "script" y he probado con otro de youtube (iframe) y tampoco hace el click.


Te estas fijando que el Id al que apuntas sea el correcto si no siempre puedes hacerlo por Tag

No apunto a ninguna ID, es por coordenadas X Y.
 
Mensajes
497
Puntuación de reacción
1
yo le coloque al link target="_blank" y el navegador me lo tomo como pop up y lo bloquea
 
Estado
No está abierto para más respuestas.
Arriba