Sonido
CSS
Dreamweaver
Ridiculeces
Artículos
Site Check
JavaScript


 


Aviso:
Me he trasladado a:
http://www.tecnorama.org
(con algunos de estos contenidos y otros nuevos)

Mi primera extensión.

Haciendo que funcione

Bueno ya hemos conseguido que se vea. Ya sólo nos queda que funcione. Para ello deberemos escribir algo de JavaScript y utilizar una función propietaria de Dreamweaver: objectTag()

Esta función no necesita parámetros (es decir no necesita que le demos nada para ejecutarse). Lo único que nos exige es que le demos para devolve algo para escribir (un string de javaScript), ya que es la función que se encarga de escribir el código en la página.
Es decir: al declararla, Dreamweaver procesará lo que hay dentro de ella y escribirá lo que devuelva al final. Un ejemplo:

function objectTag(){
var texto="Hola mundo"; 
return texto;
}

Si hubieramos escrito esto en una extensión (del tipo objeto, que es nuestro caso). Dreamweaver haría esto:

  • DW encuentra la llamada a la extensión.
  • Ejecuta todo el JavaScript (si lo hubiera) que contiene.
  • Devuelve el valor que encuentra al llegar a la linea donde ve "return"

Por tanto nuestro objetivo será que, podamos llegar a la línea del "return" con la cadena de caracteres (String) que deseamos que Dreameaver escriba (una ayuda: imaginad que en vez de "return" es "document.write" y lo enderéis mejor). Veamos pues la función:

<script language="JavaScript">
function objectTag(){
//variables que recogen los campos del formulario
var elobjeto=document.formulario.objeto.options[document.formulario.objeto.selectedIndex].value;
var elnombre = document.formulario.nombre.value;
var elsalto = "";
if (document.formulario.salto.checked==true){
elsalto="<br>";
}
var numero = document.formulario.cuantos.value;
//esta linea es la que prepara el codigo para escribir, por ejemplo:
//<input type="radio" name="mi_nombre"><br>

var linea = '<input type="'+elobjeto+'" name="'+elnombre+'">'+elsalto+'\n';
//este bucle almacena en "escribir" la variable linea tantas veces como se ha escogido
var escribir = linea;
for(i=1; i<numero; i++){
escribir+=linea;
}
//y ya solo tenemos que mandar el valor
return escribir;
}
</script>

Y ya está: escribir este script en el encabezado del documento, volverlo a guardar en el mismo sitio, cerrad Dreamweaver y tendréis una extensión 100% operativa.

De todas formas, si lo que queréis es la extensión ya hecha (y empaquetada), pinchad aquí. (está empaqueta como zip, pero al descomprimirla veréis el fichero *.mxp de instalación. Cosas de Tripod...)