proteger nuestros javascripts
quise probar de proteger el javascript de xinu con php, pero es una cosa inútil, ya que existen extensiones para firefox como "web developer" que te permiten mostrar el javascript
busque otra manera de hacerlo y encontré packer
esta herramienta te permite comprimir y codificar el código para que sea incomprensible (o al menos cuando le hechas un ojo, te se quitan todas las ganas...)
por ejemplo tenemos:
-
alert('prueba') ;
y packer te devuelve:
-
eval(function(p,a,c,k,e,r){e=String;if(!''.replace(/^/,String)){while(c--)r[c]=k[c]||c;k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('0(\'1\');',2,2,'alert|prueba'.split('|'),0,{}))
parece que no comprima, pero solo si ponemos poco código
doy fe que si que lo reduce, ya que del fichero original de 36,4 KB paso a 13.47 KB
antes de utilizar packer:
tenemos que cerrar todas las funciones y declaraciones, ejemplo:
-
function loquesea(){
-
var variable1 = 'prueba'
-
onload = function() {
-
alert(variable1);
-
}
-
}
tiene que quedar asi:
-
function loquesea(){
-
var variable1 = 'prueba';
-
onload = function() {
-
alert(variable1);
-
};
-
};
una vez puestos todos los punto y coma necesarios, nos dirigimos a la web de packer
pegamos el el código en la caja de texto que pone Paste
Si quieres, selecciona alguna de las siguientes opciones:
- Base62 encode: calificación base64 (para codificar a base64 y sea incomprensible)
- Shrink variables: encoger variables (lo que hace es cambiar es cambiar el nombre de los parámetros de las funciones)
para finalizar, le damos al botón Pack, copiamos el resultado de la caja de texto de abajo que pone Copy y guardamos el código en un fichero con extension .js
ahora solo queda probarlo, si ves que no hace nada, seguramente sera porque te has olvidado algún punto y coma.
antes de sustituir el fichero codificado, recomiendo hacer copia de seguridad del original
LightWindow, un lightbox compatible con flash
¿Se acuerdan de lightbox? ese javascript que nos permite abrir una imagen en una mini-ventana
Pues creo que LightWindow les va encantar, ya que es lo mismo pero compatible con ficheros flash
Además tiene otras características de la que destaco, la posibilidad de crear galerías con categorías
Si os habéis quedado con ganas de más, podéis ver todas las demos que ofrece la web
LightWindow utiliza prototype y scriptaculous
Prototype, script.aculo.us, moo.fx, Jquery, Dojo o Rico?
no soy un experto en esto de las librerias pero tengo entendido que prototype y script.aculo.us son las mas pesadas. (aunque tambien hay las versiones light)
moo.fx: lo he probado y no me dejo buen sabor de boca
dojo: puedo decir que las demos de su web oficial me colapsan el navegador
rico: he probado algunas demos, pero hay pocas
personalmente me decanto por jquery
¿por qué jquery?
- si es que usas wordpress, este ya esta incluido en la carpeta:
wp-includes/js/jquery
alli encontrareis:- jquery.js
- interface.js
- jquery.form.js
Luego para utilizarlas, solo teneis que incluir en el header.php las siguientes lineas:
<script src="<?php bloginfo('url');?>/wp-includes/js/jquery/jquery.js"></script>
<script src="<?php bloginfo('url');?>/wp-includes/js/jquery/interface.js"></script> - más facil para programar, si eres de los que escriben el codigo al modo tradicional esta guia te puede ayudar
- Si aun no estas convencido prueba las demos de esta web:
http://interface.eyecon.ro
@pablasso: solucionado, gracias!