Muchas veces tenemos queremos cargar por ajax una pagina o servicio y ejecutar un código javascript que viene en la respuesta, debido a que la respuesta del ajax es simple texto, esto no es posible de manera natural. Por tal razón es necesario parsear el código javascript de la respuesta y adicionarlo al elemento <HEAD> del documento, para poder utilizarlo posteriormente.
Vamos a ver esto por medio de un ejemplo donde cargamos por ajax una página que se encarga de actualizar la información de un div por medio de javascript. Se que esto se puede hacer directamente, simplemente es para efectos de demostrar como se haria.
La siguiente es la respuesta que devuelve la página que es llamada por ajax:
<div id="ajax-js"> Este div se cargará por medio de AJAX y despues se actualizara desde una función que esta en esta misma respuesta </div> <script type="text/javascript"> document.getElementById("ajax-js").innerHTML = "Ya fui actualizado desde JS"; </script>
Ahora en la página donde hacemos el llamado ajax es necesario colocar la función que se encargara de hacer el parseo de la respuesta, y hacer el llamado a la función una vez la página se ha cargado en su totalidad:
<script> function runJS() { var search = CONTENIDO DE LA RESPUESTA AJAX; var script; while( script = search.match(/(<script[^>]+javascript[^>]+>\s*(<!--)?)/i)) { search = search.substr(search.indexOf(RegExp.$1) + RegExp.$1.length); if (!(endscript = search.match(/((-->)?\s*<\/script>)/))) break; block = search.substr(0, search.indexOf(RegExp.$1)); search = search.substring(block.length + RegExp.$1.length); var oScript = document.createElement('script'); oScript.text = block; document.getElementsByTagName("head").item(0).appendChild(oScript); } } window.onload= function(){runJS();} </script>
De esta manera lograremos ejecutar funciones o codigo Javascript que ha sido cargado mediante AJAX.
En el ejemplo anterior omiti el llamado ajax y la asignación de la respuesta a la función runJS, hay diferentes maneras de hacerlo, como por ejemplo con jquery, donde en el callback del ajax podemos ejecutar la función runJS de una manera mas pro, para una próxima entrada les mostrare como hacerlo.
Tags: ajax, appendChild, callback, createElement, ejecutar, getElementById, getElementsByTagName, head, innerHTML, javascript, jquery, response, respuesta, script
Google TV es una nueva experiencia hecha para combinar la televisión que conoces y te gusta, con la libertad y el poder de Internet.
Lo que quiere google con google TV, es que tengamos la libertad de ver lo que queremos ver, cuando lo queremos ver y no cuando lo estan presentando en la televisión común, sin necesidad de ajustarnos a los horarios que establecen los canales.
Porque ahora buscar los videos de nuestros programas favoritos en google Tv y no en youtube por ejemplo?, sencillo, la pantalla de un computador no se compara con los centros de entreteniemiento que tenemos en nuestros hogares hoy en dia.
Google anuncia que los TVs más recientes lo van a traer de fabrica, pero tambien es posible disfrutar google Tv en cualquier televisor por medio de un adaptador.
A continuación un video que explica la apuesta de google ahora en el mercado de la televisión:
Tags: google, googleTv, internet, television, web, youtube
Una empresa colombiana desarrolló unas pantallas que no requieren contacto ni ningún tipo de controles para manejarlas. A primera vista, se ve como lo que hace Kinect al reconocer gestos, pero aplicado a otro tipo de software que no es videojuegos.
Como el sitio web de la empresa Inter-Screen Technology no da muchos detalles de la tecnología, hablamos con Mario Darisic, gerente comercial de la empresa, quien nos explicó que se trata de “pantallas integrales de multimedia (Audio, Video, imágen estática, texto y botones de activación), que mediante reconocimiento del movimiento exclusivamente de las manos y en tiempo real puede ejecutar cualquier tipo de aplicación por eventos en entorno Windows, reconociendo y siendo posible implementar aplicativos desde flash hasta lenguaje máquina, c++, etc. mediante nuestra software de interfase”.
Las pantallas son plasmas de 50 pulgadas, aunque también se puede implementar sobre otro tipo de televisores (LCD o LED) de entre 29 y 60 pulgadas, que se pueden controlar desde 9 metros de distancia. La tecnología se basa en sensores y “a diferencia de la realidad aumentada no implica problemas de iluminación, no precisa de marcas o señalizadores y únicamente precisa una fuente de poder”.
Según explica Darisic, toda la tecnología fue desarrollada en Colombia, y la empresa está comercializando y arrendando estos equipos para distintos fines, como publicidad, promociones, turismo, etc. No nos especificaron precios, porque son variables de acuerdo a lo que pida el cliente, pero nos imaginamos que no debe ser muy barato.
El equipo será presentado durante Campus Party Colombia, así que quienes estén por allá tal vez tendrán la oportunidad de probarlo y contarnos qué tal funciona.
Tags: campus-party, colombia, gestos, gesture, inter-screen, kinect, lcd, led, mario darisic, microsoft, pantalla, screen