Lector RSS realizado con AJAX
Función javascript que realiza petición ajax a una página php que será la que recupere el contenido del RSS:
function showRSS(str){ if (str.length==0) { document.getElementById("rssOutput").innerHTML=""; return; } if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("rssOutput").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","getrss.php?q="+str,true); xmlhttp.send(); }
Contenido de la página php,
//get the q parameter from URL $q=$_GET["q"]; //find out which feed was selected if($q=="Google"){ $xml=("http://news.google.com/news?ned=us&topic=h&output=rss"); } elseif($q=="MSNBC") { $xml=("http://rss.msnbc.msn.com/id/3032091/device/rss/rss.xml"); } $xmlDoc = new DOMDocument(); $xmlDoc->load($xml); $channel=$xmlDoc->getElementsByTagName('channel')->item(0); $channel_title = $channel->getElementsByTagName('title') ->item(0)->childNodes->item(0)->nodeValue; $channel_link = $channel->getElementsByTagName('link') ->item(0)->childNodes->item(0)->nodeValue; $channel_desc = $channel->getElementsByTagName('description') ->item(0)->childNodes->item(0)->nodeValue; echo("< p>< a href='" . $channel_link . "'>" . $channel_title . " < /a>"); echo($channel_desc . "< /p>"); $x=$xmlDoc->getElementsByTagName('item'); for ($i=0; $i<=2; $i++) { $item_title=$x->item($i)->getElementsByTagName('title') ->item(0)->childNodes->item(0)->nodeValue; $item_link=$x->item($i)->getElementsByTagName('link') ->item(0)->childNodes->item(0)->nodeValue; $item_desc=$x->item($i)->getElementsByTagName('description') ->item(0)->childNodes->item(0)->nodeValue; echo ("< p>< a href='" . $item_link . "'>" . $item_title . "< /a>"); echo ($item_desc . "< /p>"); }
Librerías javascript para crear presentaciones
Ahora, además de Microsoft Powerpoint, Keynote u otras aplicaciones conocidas también podemos crear presentaciones con html. Para ello podemos encontrar numerosas librerías javascript pensadas para crear presentaciones por medio de HTML y Javascript.
Te permiten realizar transiciones, pantalla completa o accesos con el teclado entre muchas otras cosas. La principal ventaja que tiene es que al estar realizadas vía web simplemente tendremos que acceder a la URL donde subamos la presentación y no tenemos que asegurarnos de que el ordenador en cuestión tenga instalado el software necesario.
También son ideales para presentar y explicar un servicio a nuevos visitantes de una forma original.
Algunos de ellos son:
– Deck.js: se trata de una bonita biblioteca JavaScript para crear presentaciones HTML.
Mientras que los usuarios avanzados pueden crear presentaciones totalmente personalizadas, hay plantillas y temas para los usuarios novatos que permiten crear una presentación de diapositivas estándar sin ningún esfuerzo.
– Fathom.js: Este es un plugin de jQuery que nos permite crear las diapositivas en HTML, con estilos CSS y controlar la lógica de presentación con JavaScript. La navegación se puede manejar con el teclado, el ratón o el desplazamiento. Permite la definición de un video para sincronizar con la presentación de diapositivas.
– Html5slides: está desarrollada por Google. Cuenta con 2 temas incorporados y soporta 3 diseños diferentes (normal, faux-widescreen, pantalla ancha).
– Dzslides: consiste en un solo archivo HTML5 CSS3 que hace de plantilla para construir las presentaciones. Además, dispone de 2 funcionalidades: incrustar el resultado en otras páginas y mostrar diapositivas con un panel de control.
– Slippy: es una librería de presentaciones HTML realizada con jQuery. Además de navegar por las diapositivas con las siguientes teclas prev-que permite a los usuarios ir directamente a la diapositiva que desee con las teclas numéricas.
– S5: Un popular motor de presentación basada en estándares que tiene todas las características que podemos pedir, incluyendo: auto-escalado de texto, representación incremental, URL única para cada diapositiva, indicador de progreso y mucho más…
Lista de plugins para utilizar en el firefox
1. – Video DownloadHelper
La manera fácil de descargar y convertir vídeos de cientes de sitios similares a YouTube.
También funciona para audio y galerías de imágenes.
2. – Firebug
SFirebug se integra con Firefox para poner una gran cantidad de herramientas de desarrollo a su alcance mientras navegas. Usted puede editar, depurar y monitorear CSS, HTML y JavaScript en vivo en cualquier página web …
3. – Greasemonkey
Este plugin te permite Personalizar la forma en que una página web muestra o se comporta, mediante el uso de pequeños fragmentos de JavaScript.
4. – CacheViewer Continued
Se trata de un plugin para Firefox que permite interactuar con la caché del navegador de forma sencilla. Con CacheViewer Continued puede previsualizar las imágenes, ver los detalles de las entradas de caché, guardar los archivos de la memoria caché en otro lugar, y eliminar los archivos de la caché.
5. – FoxyProxy Standard
FoxyProxy es una extensión Firefox que cambia entre uno o más proxies automáticamente, en base a patrones de la URL. Dicho de otra manera, FoxyProxy automatiza el proceso manual de modificar los parámetros de las Propiedades de Conexión de Firefox. El cambio de servidor proxy depende de la página a cargar y de las reglas de selección definidas por el usuario.
Carácteres Unicode
Code | Result | Description |
---|---|---|
C1 Controls | ||
U+0080 | PAD – Padding Character | |
U+0081 | HOP – High Octet Preset | |
U+0082 | BPH – Break Permitted Here | |
U+0083 | NBH – No Break Here | |
U+0084 | IND – Index | |
U+0085 | NEL – Next Line | |
U+0086 | SSA – Start of Selected Area | |
U+0087 | ESA – End of Selected Area | |
U+0088 | HTS – Character (Horizontal) Tabulation Set | |
U+0089 | HTJ – Character (Horizontal) Tabulation with Justification | |
U+008A | LTS – Line (Vertical) Tabulation Set | |
U+008B | PLD – Partial Line Forward (Down) | |
U+008C | PLU – Partial Line Backward (Up) | |
U+008D | RI – Reverse Line Feed (Index) | |
U+008E | SS2 – Single-Shift Two | |
U+008F | SS3 – Single-Shift Three | |
U+0090 | DCS – Device Control String | |
U+0091 | PU1 – Private Use 1 | |
U+0092 | PU2 – Private Use 2 | |
U+0093 | STS – Set Transmit State | |
U+0094 | CCH – Cancel character | |
U+0095 | MW – Message Waiting | |
U+0096 | SPA – Start of Protected Area | |
U+0097 | EPA – End of Protected Area | |
U+0098 | SOS – Start of String | |
U+0099 | SGCI – Single Graphic Character Introducer | |
U+009A | SCI – Single Character Introducer | |
U+009B | CSI – Control Sequence Introducer | |
U+009C | ST – String Terminator | |
U+009D | OSC – Operating System Command | |
U+009E | PM – Private Message | |
U+009F | APC – Application Program Command | |
Latin-1 Punctuation and Symbols | ||
U+00A0 | Non-breaking space | |
U+00A1 | ¡ | Inverted Exclamation Mark |
U+00A2 | ¢ | Cent sign |
U+00A3 | £ | Pound sign |
U+00A4 | ¤ | Currency sign |
U+00A5 | ¥ | Yen sign |
U+00A6 | ¦ | Broken bar |
U+00A7 | § | Section sign |
U+00A8 | ¨ | Diaeresis |
U+00A9 | © | Copyright sign |
U+00AA | ª | Feminine Ordinal Indicator |
U+00AB | « | Left-pointing double angle quotation mark |
U+00AC | ¬ | Not sign |
U+00AD | Soft hyphen | |
U+00AE | ® | Registered sign |
U+00AF | ¯ | Macron |
U+00B0 | ° | Degree symbol |
U+00B1 | ± | Plus-minus sign |
U+00B2 | ² | Superscript two |
U+00B3 | ³ | Superscript three |
U+00B4 | ´ | Acute accent |
U+00B5 | µ | Micro sign |
U+00B6 | ¶ | Pilcrow sign |
U+00B7 | · | Middle dot |
U+00B8 | ¸ | Cedilla |
U+00B9 | ¹ | Superscript one |
U+00BA | º | Masculine ordinal indicator |
U+00BB | » | Right-pointing double-angle quotation mark |
U+00BC | ¼ | Vulgar fraction one quarter |
U+00BD | ½ | Vulgar fraction one half |
U+00BE | ¾ | Vulgar fraction three quarters |
U+00BF | ¿ | Inverted Question Mark |
Letters | ||
U+00C0 | À | Latin Capital Letter A with grave |
U+00C1 | Á | Latin Capital letter A with acute |
U+00C2 | Â | Latin Capital letter A with circumflex |
U+00C3 | Ã | Latin Capital letter A with tilde |
U+00C4 | Ä | Latin Capital letter A with diaeresis |
U+00C5 | Å | Latin Capital letter A with ring above |
U+00C6 | Æ | Latin Capital letter AE |
U+00C7 | Ç | Latin Capital letter C with cedilla |
U+00C8 | È | Latin Capital letter E with grave |
U+00C9 | É | Latin Capital letter E with acute |
U+00CA | Ê | Latin Capital letter E with circumflex |
U+00CB | Ë | Latin Capital letter E with diaeresis |
U+00CC | Ì | Latin Capital letter I with grave |
U+00CD | Í | Latin Capital letter I with acute |
U+00CE | Î | Latin Capital letter I with circumflex |
U+00CF | Ï | Latin Capital letter I with diaeresis |
U+00D0 | Ð | Latin Capital letter Eth |
U+00D1 | Ñ | Latin Capital letter N with tilde |
U+00D2 | Ò | Latin Capital letter O with grave |
U+00D3 | Ó | Latin Capital letter O with acute |
U+00D4 | Ô | Latin Capital letter O with circumflex |
U+00D5 | Õ | Latin Capital letter O with tilde |
U+00D6 | Ö | Latin Capital letter O with diaeresis |
Mathematical Operator | ||
U+00D7 | × | Multiplication sign |
Letters | ||
U+00D8 | Ø | Latin Capital letter O with stroke |
U+00D9 | Ù | Latin Capital letter U with grave |
U+00DA | Ú | Latin Capital letter U with acute |
U+00DB | Û | Latin Capital Letter U with circumflex |
U+00DC | Ü | Latin Capital Letter U with diaeresis |
U+00DD | Ý | Latin Capital Letter Y with acute |
U+00DE | Þ | Latin Capital Letter Thorn |
U+00DF | ß | Latin Small Letter sharp S |
U+00E0 | à | Latin Small Letter A with grave |
U+00E1 | á | Latin Small Letter A with acute |
U+00E2 | â | Latin Small Letter A with circumflex |
U+00E3 | ã | Latin Small Letter A with tilde |
U+00E4 | ä | Latin Small Letter A with diaeresis |
U+00E5 | å | Latin Small Letter A with ring above |
U+00E6 | æ | Latin Small Letter AE |
U+00E7 | ç | Latin Small Letter C with cedilla |
U+00E8 | è | Latin Small Letter E with grave |
U+00E9 | é | Latin Small Letter E with acute |
U+00EA | ê | Latin Small Letter E with circumflex |
U+00EB | ë | Latin Small Letter E with diaeresis |
U+00EC | ì | Latin Small Letter I with grave |
U+00ED | í | Latin Small Letter I with acute |
U+00EE | î | Latin Small Letter I with circumflex |
U+00EF | ï | Latin Small Letter I with diaeresis |
U+00F0 | ð | Latin Small Letter Eth |
U+00F1 | ñ | Latin Small Letter N with tilde |
U+00F2 | ò | Latin Small Letter O with grave |
U+00F3 | ó | Latin Small Letter O with acute |
U+00F4 | ô | Latin Small Letter O with circumflex |
U+00F5 | õ | Latin Small Letter O with tilde |
U+00F6 | ö | Latin Small Letter O with diaeresis |
Mathematical Operator | ||
U+00F7 | ÷ | Division sign |
Letters | ||
U+00F8 | ø | Latin Small Letter O with stroke |
U+00F9 | ù | Latin Small Letter U with grave |
U+00FA | ú | Latin Small Letter U with acute |
U+00FB | û | Latin Small Letter U with circumflex |
U+00FC | ü | Latin Small Letter U with diaeresis |
U+00FD | ý | Latin Small Letter Y with acute |
U+00FE | þ | Latin Small Letter Thorn |
U+00FF | ÿ | Latin Small Letter Y with diaeresis |
Incrementar días a una fecha con javascript
Código que muestra una función que devuelve la fecha actual aumentada o disminuida en días dependiendo de los días recibidos como parámetro.
/** * Funcion que devuelve fecha actual y fecha modificada n dias * Tiene que recibir el numero de dias en positivo o negativo para * sumar o restar a la fecha actual. * Ejemplo: * mostrarFecha(-10) => restara 10 dias a la fecha actual * mostrarFecha(30) => añadira 30 dias a la fecha actual */ function mostrarFecha(days){ fecha=new Date(); day=fecha.getDate(); month=fecha.getMonth()+1; year=fecha.getFullYear(); document.write("Fecha actual: "+day+"/"+month+"/"+year); tiempo=fecha.getTime(); milisegundos=parseInt(days*24*60*60*1000); total=fecha.setTime(tiempo+milisegundos); day=fecha.getDate(); month=fecha.getMonth()+1; year=fecha.getFullYear(); document.write("Fecha modificada: "+day+"/"+month+"/"+year); }
JSBin, JSBeautifier y JSFiddle
JSBin es un servicio online que nos permite introducir código HTML, CSS y JavaScript y verificar su funcionamiento. Está pensado para que los desarrolladores puedan trabajar de manera colaborativa.
En http://jsbin.com podemos editar sin dificultades, incluir alguna de las librerías más comunes e incluso, guardar la URL del proyecto y hacerla pública. (Más info.)
JSBeautifier, te organiza y modifica estéticamente tu código Javascript, de modo que este sea más placentero a la vista y siga estándares de formatos de programación.
JSFiddle, potente herramienta para Javascript y frameworks como JQuery y Prototype.js
Al igual que as anteriores se trata de una herramienta 100% web. Lo que JSFiddle te ofrece es un ambiente de varias ventanas dentro de tu navegador web, en donde en una de ellas puedes escribir HTML, y en otra sentencias de Javascript (como por ejemplo, selectores de JQuery), y después en otra ventana ves el resultado.
Con JSFiddle eliges la versión de la librería que deseas, copias un pedazo de HTML (o utilizas el que te ofrecen por defecto), lo modificas, y escribes tu Javascript para ver si hace lo que esperas que hagas, y listo. Varios minutos se reducen a segundos.
Patrón Decorator para Javascript
El patrón decorator es un patrón de diseño que permite añadir un comportamiento adicional a un objeto existente dinámicamente.
var JQuery ={ getNombre:function(){ return "Pepe"; } }; //Decorado del objeto con la capacidad de formar un nombre completo (function($){ $.test = function(apellido){ return JQuery.getNombre() + " " + apellido; } })(JQuery); // Usando la funcionalidad decorada console.log( JQuery.test("Contreras") );
El resultado obtenido es: «Pepe Contreras»
Patrón Módulo Revelado para Javascript (Revealing Module)
Se trata de uno de los patrones más utilizados y elegantes a la hora de organizar código javascript. Su principal atractivo es que resulta extremadamente útil para conseguir código reusable y, sobre todo, modular.
Consiste en una función que actúa como contenedor para un contexto de ejecución. En su interior, se declaran una serie de variables y funciones que solo son visibles desde dentro del mismo.
if(!es){ var es = {}; } if(!es.com){ es.com = {}; } if(!es.com.disastercode){ es.com.disastercode = {}; } es.com.disastercode.lib = ( function(){ var prop = 'propiedad'; var privateMethod = function(){ return 'método privado'; } return { publicMethod : f1, publicMethod2 : f2 } function f1(){ return privateMethod() + prop; } function f2(){ return ""; } })(); var prueba = es.com.disastercode.lib; console.log(prueba.publicMethod());
El resultado obtenido es: «método privadopropiedad»
Crear un select multiple con checkbox . Utilizando JQuery.
.multiselect { width:20em; height:15em; border:solid 1px #c0c0c0; overflow:auto; } .multiselect label { display:block; } .multiselect-on { color:#ffffff; background-color:#000099; }
jQuery.fn.multiselect = function() { $(this).each(function() { var checkboxes = $(this).find("input:checkbox"); checkboxes.each(function() { var checkbox = $(this); // Highlight pre-selected checkboxes if (checkbox.attr("checked")) checkbox.parent().addClass("multiselect-on"); // Highlight checkboxes that the user selects checkbox.click(function() { if (checkbox.attr("checked")) checkbox.parent().addClass("multiselect-on"); else checkbox.parent().removeClass("multiselect-on"); }); }); }); };
$(".multiselect").multiselect();
Juego de diamantes online
Este juego ha sido realizado bajo las tecnologías DHTML, JQUERY y PHP.
Para su realización se ha optado por reutilizar un proyecto ya existente y que estaba basado en un motor de juego realizado en javascript de tipo Open Source.
Para obtener más información consultar, Open Source Diggy:
http://www.mobilegameengines.com/html5/engines/128-diggy
https://github.com/richtaur/diggy
La dirección es http://diamantebomba.disastercode.com.es.
Categorias
- adobe (2)
- agile (1)
- Alfresco (1)
- Android (26)
- angularjs (5)
- axis (2)
- Bases de datos (14)
- C# (3)
- chrome (2)
- Codeigniter (2)
- Control de Versiones (2)
- CSS (21)
- CVS (1)
- Django (9)
- Django Rest Framework (1)
- DNS (1)
- Docker (1)
- dominio (1)
- eclipse (5)
- Entity Framework (2)
- ETL (1)
- Firefox (5)
- flash (1)
- Git (7)
- Groovy (1)
- Handlebars (1)
- hibernate (4)
- hosting (1)
- HTML (38)
- HTML 5 (10)
- Impresión 3D (6)
- IOS (2)
- ireports (3)
- Java (40)
- Javascript (40)
- JBoss (3)
- JPA (2)
- JQuery (16)
- Json (2)
- JSP (5)
- Lamp (1)
- lean (1)
- linkedin (1)
- LINQ (1)
- linux (11)
- Livecycle (1)
- log (1)
- microcontroladores (1)
- MongoDB (4)
- MySQL (7)
- Node.js (3)
- OC4J (1)
- Openshift (2)
- Oracle (5)
- Patrones de Diseño (1)
- Photoshop (2)
- php (19)
- PostgreSQL (1)
- python (18)
- rabbitmq (1)
- Raspberry PI (13)
- Raspherry PI (5)
- seguridad (3)
- Selenium (3)
- Sencha Touch (1)
- Sin categoría (15)
- Spring (13)
- SQL (7)
- SQLServer (1)
- struts (2)
- SVN (1)
- Talend (1)
- Tomcat (5)
- unity (3)
- vmware (4)
- Web Services (11)
- windows (17)
- wordpress (10)
- xml (2)
Trabajos Realizados
- App Android – Autoka Fr
- App Android – Cartelera Cántabra
- App Android – Gramática y Vocabulario Ingles
- App Android – Hoja de Gastos
- App Android – Hotel Torre Cristina
- App Android – OcioEnjoy
- App Android – Visor CardBoard
- App Firefox – Managapp
- DiamanteBomba – DisasterCode
- Generador de Partes de Trabajo
- GitHub – Android Web Generator
- GitHub – Sotilizator
- GitHub – SpringAngularJS
- HazParejas – DisasterCode
- RompeCabezas – DisasterCode
- Unity Game – English Couple
- Unity Game – Kill Wasp
- WordPress – El Buen Apicultor
- WordPress – El Cajón de los Retales
- WordPress – El Vestidito Azul
- WordPress – Feuchas
- WordPress – Fragua de Navajas Ponce
- WordPress – Humor a las Tres
- WordPress – Photo Places