Pasar la variable de cadena Javascript como comando Firebug

Usando Firebug he extraído todos los enlaces de una página web usando:

var links = document.getElementsByTagName("a");
for(var i=0; i<links.length; i++) {
    console.log(links[i].href);
}

ahora todos los enlaces están en la consola y tienen el formato:

javascript:tenderLog1('abcd.pdf','test','23');

Ahora quiero pasar esta salida de cadena como un comando Firebug js para que todos los enlaces se abran automáticamente.

¿Hay alguna función para pasar la variable js como un comando de Firebug?

preguntado el 01 de julio de 12 a las 17:07

Probablemente debería explicar su intención subyacente, ya que lo que describe que quiere lograr no tiene mucho sentido. -

quiero decir, digamos que obtuve la cadena javascript:tenderLog1('abcd.pdf','test','23'); de la página web. Ahora necesito pasar esta cadena como un comando firebug para que se llame a la función tenderLog1 respectiva:

Si no existe tal comando, ¿puede decirme la expresión regular para que pueda obtener los 3 argumentos de la cadena? Desde allí puedo llamar a la función manualmente. Gracias -

@SuryaKLSV La solución más fácil es definir una función tenderLog1, y use eval en esa cuerda. Otro método es (¡SIN REGEXES!) para obtener el contenido entre paréntesis, envuélvalo en [, ], y use JSON.parse. -

javascript:tenderLog1('abcd.pdf','test','23'); no es un "comando firebug", sea lo que sea, por lo que no habría forma de "pasarlo" como tal. Es una URL. Realmente no tiene sentido; puede abrir direcciones URL usando window.open, aunque creo que algunos navegadores restringen javascript: URL hoy en día. -

1 Respuestas

Es un poco difícil adivinar qué es exactamente lo que quieres lograr. Supongo que quieres en lugar de

console.log(links[i].href);

que hacer

eval(links[i].href.replace("javascript:",""));

? Esto sería equivalente a invocar tenderLog1('abcd.pdf','test','23') desde la consola Firebug en el ejemplo que ha proporcionado. El resultado depende de lo que tenderLog1 funciones hace por supuesto.

Pero tal vez sería más limpio ver qué hace la función (window.open?) y proporcionar comandos después de analizar los parámetros con alguna expresión regular.

Respondido 06 Jul 12, 01:07

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.