Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Почему на элемены импортированные с помощью .load функции JS не действуют? (https://javascript.ru/forum/jquery/39254-pochemu-na-ehlemeny-importirovannye-s-pomoshhyu-load-funkcii-js-ne-dejjstvuyut.html)

Vladjiss 22.06.2013 18:29

Почему на элемены импортированные с помощью .load функции JS не действуют?
 
Есть два идентичных документа HTML, однако второй отличается от первого тем, что ссылка находится не в самом коде документа, а загружается с сервера с помощью функции .load и другие функции JS на неё не действуют. Как сделать, чтобы действовали?
Привожу код
Первый документ:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js'></script>
</head>
<body>
<div class="ddd">
<a target="fra" id="link1" href="http://www.cinemapark.ru/main">Ссылка</a>
</div>
<div id="content">...</div>
<iframe name="fra" style="display: none"></iframe>
<script type="text/javascript">
 $(document).ready(function(){
$("a").click(function(){  
var myVar = $(this).attr('href');  
          $("#content").load(myVar + " div#today_on_screen");
});
  });
</script>

</body>
</html>


Второй:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js'></script>
</head>
<body>
<div class="ddd">
</div>
<div id="content">...</div>
<iframe name="fra" style="display: none"></iframe>
<script type="text/javascript">
 $(document).ready(function(){
$("div.ddd").load("http://danreegly.ru/FS/link.html");
$("a").click(function(){  
var myVar = $(this).attr('href');  
          $("#content").load(myVar + " div#today_on_screen");
});
  });
</script>

</body>
</html>

vadim5june 22.06.2013 18:37

По моему вам click через on нужно запускать во 2-ом случае
http://api.jquery.com/on/

Vladjiss 22.06.2013 18:51

Спасибо! Всё заработало!
Выкладываю правильный код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">

</head>
<body>
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js'></script>
<div class="ddd">
</div>
<div id="content">...</div>
<iframe name="fra" style="display: none"></iframe>
<script type="text/javascript">
 $(document).ready(function(){
$("div.ddd").load("http://danreegly.ru/FS/link.html");
$(".ddd").on("click", "a", function(){  
var myVar = $(this).attr('href');  
          $("#content").load(myVar + " div#today_on_screen");
});
  });
</script>

</body>
</html>

Faab 22.06.2013 19:01

У меня всё так и не грузит в div ничего с внешних ссылок))) мне уже самому интересно.

Vladjiss 22.06.2013 19:17

В браузере не будет работать, хотя я сам не знаю почему!

vadim5june 22.06.2013 19:22

Цитата:

Сообщение от Faab
У меня всё так и не грузит в div ничего с внешних ссылок

по моему он с внешних ссылок и не должен грузить-защита

danik.js 23.06.2013 05:02

Если внешний сервер разрешает кросс-доменные запросы (выставляя заголовок), то можно грузить и с внешней ссылки. Не работает в старых браузерах.


Часовой пояс GMT +3, время: 15:21.