Por razones de seguridad, no podemos realizar solicitudes AJAX entre dominios con jQuery. Por ejemplo, no puedo llamar al método load () y pasar "cnn.com". Como estaríamos cargando scripts y demás, así como nuestro contenido deseado, esto representaría un riesgo de seguridad significativo. No obstante, puede haber ocasiones en que esto sea específicamente lo que necesita. Gracias a YQL, podemos permitir esta funcionalidad con bastante facilidad.!
// Acepta una url y una función de devolución de llamada para ejecutar. function requestCrossDomain (site, callback) // Si no se pasó una url, salga. if (! site) alert ('No se ha pasado ningún sitio'); falso retorno; // Toma la url provista, y agrégala a una consulta YQL. ¡Asegúrate de codificarlo! var yql = 'http://query.yahooapis.com/v1/public/yql?q=' + encodeURIComponent ('select * from html where url = "' + site + '"') + '& format = xml & callback = cbFunc '; // Solicita esa cadena YSQL, y ejecuta una función de devolución de llamada. // Pasa una función definida para evitar el almacenamiento en caché. $ .getJSON (yql, cbFunc); function cbFunc (data) // Si tenemos algo con lo que trabajar… if (data.results [0]) // Eliminar todas las etiquetas de script, por razones de seguridad. // TEN MUCHO CUIDADO. Esto ayuda, pero deberíamos hacer más. data = data.results [0] .replace (/ , o . Por este motivo, agregamos una clase de caracteres ([^>] *), que significa "Encuentra cero o más de cualquier cosa que NO ES un corchete de cierre. Esto se hará cargo de los atributos y valores..[\ s \ S] *?A continuación, queremos eliminar todo el código, así como cualquier espacio. \ s se refiere a un espacio. \ S Se refiere a cualquier cosa que NO ES un espacio. Una vez más, añadimos un * después de la clase de caracteres para designar que queremos cero o más ocurrencias.
<\/script>Finalmente, encuentra las etiquetas de script de cierre..
Otras lecturas
Esto solo pretende proporcionar una visión de cómo podemos lograr esta funcionalidad. Solo se puede cubrir tanto en un video de cinco minutos. Siéntete libre de discutir en los comentarios, y siempre te recomendamos que bifurques el código fuente para mejorarlo.!