Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: z3nth10n en 15 Abril 2013, 21:20 pm



Título: Se puede optimizar más este codigo?
Publicado por: z3nth10n en 15 Abril 2013, 21:20 pm
Hola, pues el código es el siguiente.

Código
  1. <script src="http://code.jquery.com/jquery-1.9.0.js"></script>
  2. <script>
  3.    $(document).ready(function () {
  4.    $('.eurowrapper').hide();
  5.    $('#def').show();
  6.    $('#drop2').change(function () {
  7.        $('.eurowrapper').hide();
  8.        $('#'+$(this).val()).show();
  9.    })
  10.    });
  11. </script>
  12.  <b>Link del juego:</b>
  13.   <input type="text" value="" name="link_juego" />
  14.   <select name="tipo_de_juego" id="drop2">
  15.      <!-- disabled="disabled" no permite seleccionar ese elemento -->
  16.      <option value="" selected="selected" disabled="disabled">Selecciona el tipo de Juego</option>
  17.      <option value="" disabled="disabled">---</option>
  18.      <option value="" disabled="disabled"></option>
  19.      <!-- Agregamos el tipo de juego -->
  20.      <option value="flash">Flash</option>
  21.      <option value="java">Java</option>
  22.      <option value="unity">Unity3D</option>
  23.      <option value="iframe">iFrame</option>
  24.      <option value="otro">C&oacute;digo propio</option>
  25.   </select>
  26. <span id="def" class="eurowrapper"><br>
  27. <br><b>Ancho:</b> <input type="text" name="ancho" id="ancho" MAXLENGTH=4 SIZE=1 /> px.
  28. <br><b>Alto:</b> <input type="text" name="alto" id="alto" MAXLENGTH=4 SIZE=1 /> px.
  29. <br></span>
  30. <span id="flash" class="eurowrapper"><br>
  31. <br><b>Ancho:</b> <input type="text" name="ancho" id="ancho" MAXLENGTH=4 SIZE=1 /> px.
  32. <br><b>Alto:</b> <input type="text" name="alto" id="alto" MAXLENGTH=4 SIZE=1 /> px.
  33. <br></span>
  34. <span id="java" class="eurowrapper"><br>
  35. <br><b>Ancho:</b> <input type="text" name="ancho" id="ancho" MAXLENGTH=4 SIZE=1 /> px.
  36. <br><b>Alto:</b> <input type="text" name="alto" id="alto" MAXLENGTH=4 SIZE=1 /> px.
  37. <br></span>
  38. <span id="unity" class="eurowrapper"><br>
  39. <br><b>Ancho:</b> <input type="text" name="ancho" id="ancho" MAXLENGTH=4 SIZE=1 /> px.
  40. <br><b>Alto:</b> <input type="text" name="alto" id="alto" MAXLENGTH=4 SIZE=1 /> px.
  41. <br></span>
  42. <span id="iframe" class="eurowrapper"><br>
  43. <br><b>Ancho:</b> <input type="text" name="ancho" id="ancho" MAXLENGTH=4 SIZE=1 /> px.
  44. <br><b>Alto:</b> <input type="text" name="alto" id="alto" MAXLENGTH=4 SIZE=1 /> px.
  45. <br></span>
  46. <span id="otro" class="eurowrapper"><br><br>
  47. <textarea rows="5" cols="100" name="code" id="code" MAXLENGTH=5000></textarea><br>
  48. <b><i>* Recuerda de poner el Ancho y alto, el embed correctamente, y link del juego. ;)<br>PD: El m&aacute;ximo de caracteres permitidos es 5000.</i></b>
  49. <br></span>
  50. <br>
  51.  

Un saludo.


Título: Re: Se puede optimizar más este codigo?
Publicado por: dank_ en 16 Abril 2013, 05:23 am
Ya que no estás usando XHTML, puedes cambiar los  selected="selected" por selected y los disabled="disabled" por disabled.

Te aconsejo poner todos los atributos de HTML en minúsculas más que nada por legibilidad y concordancia.

En lo personal eliminaría todos los rows y cols y dejaría todo el diseño para el CSS. Lo cual también incluye los saltos de linea,  evita las etiquetas <br> y mejor encierra todo en etiquetas de bloque (divs), te serán más útiles si piensas cambiar el diseño después.

Si pones tú script después del HTML que vas a modificar puedes ahorrarte el $(document).ready().

Puedes usar la etiqueta "label" con el atributo "for" para que cuando se de clic en un texto ponga el cursor directo en el input que se va a modificar.

Por ejemplo así:

Citar
<label for="ancho">Ancho:</label> <input type="text" name="ancho" id="ancho" maxlength="4" size="1" /> px.


Título: Re: Se puede optimizar más este codigo?
Publicado por: z3nth10n en 16 Abril 2013, 07:33 am
Yo a lo que me venía a referir era a que si se podia hacer una matriz de elementos con lo de Show/Hide... ;)