Загрузка Jquery не работает - PullRequest
4 голосов
/ 11 февраля 2012

Загрузка jquery в приведенном ниже коде не работает.Что мне здесь не хватает?

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js">  </script>
</head>
<body style="font-size:62.5%;">

<div id="dialog" title="Dialog Title">I'm in a dialog</div>
<script>
$(document).ready(function() {
        $("#dialog").load('http://www.google.com/intl/en/about/index.html #maia-main');
});
</script>
</body>
</html>

Ответы [ 4 ]

5 голосов
/ 11 февраля 2012

Вы запрашиваете страницу, которая находится в другом домене, поэтому применяются междоменные политики.Вы можете получить доступ к данным в нескольких доменах, если удаленный сервер разрешает это (и я полагаю, что только с помощью JSONP кто-нибудь исправит меня, если я ошибаюсь в этом ).Если вы хотите получить источник страницы Google, вам нужно будет сделать это с помощью серверного скрипта в качестве прокси для вашего jQuery:

$(function() {

    //notice the client-side code (JS) is requesting a page on the save domain
    $("#dialog").load('my-script.php #maia-main');
});

А в my-script.php вы бы взяли удаленныйстраница, которую вы хотите:

<?php

//PHP, like all server-side languages has no cross-domain-policy
echo file_get_contents('http://www.google.com/intl/en/about/index.html');
?>

Документы для file_get_contents(): http://www.php.net/file_get_contents

2 голосов
/ 11 февраля 2012

попробуйте переместить ваш скрипт на сервер, jquery ajax не всегда работает на локальном компьютере.

0 голосов
/ 21 июля 2014

Загрузить внешнюю ссылку в ".load ()"

создать страницу скажем external.php

В external.php введите следующий код:

<?php
$url = 'http://ur/url/here'; 
echo $var = get_file_contents($url); ?>

теперь загрузите эту страницу в jquery и загрузите внешнюю ссылку

$ ( 'DIV') нагрузки ( 'external.php');.

0 голосов
/ 11 февраля 2012

Выполнение сценария

При вызове .load() с использованием URL-адреса без выражения селектора с суффиксом содержимое передается в .html() до удаления сценариев.Это выполняет блоки скрипта до того, как они будут отброшены.Однако, если .load() вызывается с выражением селектора, добавленным к URL, сценарии удаляются до обновления DOM и, следовательно, не выполняются.Пример обоих случаев можно увидеть ниже:

Здесь любой JavaScript, загруженный в #a как часть документа, будет успешно выполнен.

$('#a').load('article.html');

Однако в следующем случаеблоки скриптов в документе, загружаемом в #b, удаляются и не выполняются:

$('#b').load('article.html #target');

Источник: jQuery.com

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...