Функция загрузки jQuery ничего не делает - PullRequest
0 голосов
/ 08 ноября 2011

Я хочу загрузить внешний проигрыватель jQuery в мой div #player. Я пробовал несколько адресов, чтобы найти какие-либо изменения, но там нет содержимого. Что я делаю не так?

    // This one is okay
    $("li a").live("click", function(){
           $("#textoPequeno").load($(this).attr('href'));    
           return false;
    });

    //This one is not doing anything
    $(document).live(function() {
    $("#player").load("http://code.internuts.se/jquery/iwish/index.html");
    } );

HTML-код:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<link href="css/style.css" media="screen" rel="stylesheet" type="text/css">
<link rel="stylesheet" href="css/simpleplayer.css" type="text/css">
 <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.min.js"></script>
<script type="text/javascript" src="include/javascript.js"></script>



<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Opera</title>
</head>

<body>
    <div id="main">
        <div id="header">

            <h1 id="logo">
                <a href="#">Linux Logo</a>
            </h1>

            <ul>
                <li><a href="1.html">Home</a></li>
                <li><a href="2.html">Navegación</a></li>
                <li><a href="3.html">Novedades</a></li>
                <li><a href="4.html">Diseño</a></li>
                <li><a href="5.html">Multimedia</a></li>
            </ul>

            <div id="player">
            </div>

        </div>
    <div id="imagen"></div>
    <h2 id="textoGrande"><p>Opera ahora<br /> mas acojedor...</p>
    </h2><h3 id="textoPequeno"><p>La hegemonía de Internet Explorer, el navegador web de Microsoft, poco a poco va llegando a su fin. Durante los últimos años hemos asistido a la aparición de nuevos navegadores que han explotado las carencias de Internet Explorer, incorporando nuevas características ausentes en éste.</p>

    </h3></div>


</body></html>

Ответы [ 4 ]

2 голосов
/ 08 ноября 2011

Это должно быть document.ready

$(document).ready(function() {
   $("#player").load("http://code.internuts.se/jquery/iwish/index.html");

   // include this in the document.ready as well because in order to attache the events the document needs to be ready. 
   $("li a").live("click", function(){
           $("#textoPequeno").load($(this).attr('href'));    
           return false;
    });
} );

Даже после внесения этого изменения я все еще подозреваю, что вы столкнетесь с ограничением того же источника , которое ограничивает междоменные запросы ajax, я 'Я предполагаю, что это не ваш домен.

1 голос
/ 08 ноября 2011

AJAX-вызовы ограничены Одинаковой политикой происхождения : он не будет работать для загрузки контента, который находится за пределами вашего домена.

Читайте здесь: http://en.wikipedia.org/wiki/Same_origin_policy

0 голосов
/ 08 ноября 2011

Вы неправильно используете jQuery.live(), функцию для привязки обработчиков событий для элементов DOM, которые изменяются или заменяются - я думаю, что вам нужно здесь jQuery.ready():

$(document).ready(function() {
   $("#player").load("http://code.internuts.se/jquery/iwish/index.html");
});

Это также может быть упрощено как:

$(function() {
   $("#player").load(...);
});
0 голосов
/ 08 ноября 2011

Я не думаю, что ваш звонок делает то, что вы думаете. Попробуйте вместо этого ...

$(function() {
    $("#player").load("http://code.internuts.se/jquery/iwish/index.html");
});

$(....) является сокращением jQuery для document.ready. Функция, переданная в качестве параметра в jQuery, будет связана с document.ready.

...