Los ninjas no nacen siendo ninjas, requieren practicar todo el día por mucho tiempo. Eventualmente suben de un nivel de principiante a un nivel intermedio, después uno avanzado y después son master ninjas que pueden matar sin ser vistos.
Claramente el objetivo de un javascript ninja no es matar sin ser visto, pero si es modificar el DOM como si fuera cortar bambú con una katana y hacer AJAX request con si fuera aventar estrellas ninjas. Hoy, @dfect estaba montando una versión de reddit en culter.com.mx y se necesitaba traducir 672 etiquetas para poderlo liberar en español.
Nuestro interés era traducirlo poco a poco, pero que pudiéramos liberarlo ya; sin embargo eso no era posible, necesitábamos traducir todos. El estaba checando como hacerlo del lado del servidor, cuando le comente que yo estaba checando como hacerlo con javascript, lo cual propicio su respuesta ‘whatchamean javascript?’, claramente @dfect no tenia js como posible solución, mientras que yo hacia un script que habilitara todos los campos para poderlos editar todos de golpe de la siguiente manera:
$('a').each(function(){if($(this).html() == 'edit'){$(this).click()}});
En ese momento todo quedo claro.
Después de un ratito, tenia el siguiente script:
$('a').each(function(){if($(this).html() == 'edit'){ tr = $(this).closest('tr'); td = $('td',tr); original = $(td[0]).text() $(this).click() input = $('input',$(td[2])).val(original) }});
Que toma el valor predeterminado de la tr[0] y lo agregaba al valor del input que queríamos editar. Tal vez no me convierta en js ninja con este script, pero si subí una cinta en mi camino a ser un javascript ninja.
Hubo un problema de espacios al pasar los valores, pero lo arregle poco después, ahora tenemos algunas etiquetas publicadas en español, y cada día tendremos más. Espero que les agrade compartir ligas con nosotros en culter.com.mx y que tengan el interés de entrenar para ser un ninja del lenguaje de programación de su preferencia.
Related posts: