Смотрите эту JSFiddle: http://jsfiddle.net/cDVQP/1/
Если у вас есть как Chrome и Firefox вы можете увидеть, что он работает, как ожидается, в Chrome, но в Firefox Firebug консоли вы получите «TypeError: е не определен» на JSFiddle ошибка появляется как «TypeError: OBJ не определен»
я провел часа охоты на эту ошибку и пытается понять это и, наконец, сдался и пришел сюда , Что вызывает это?
Вот полный код для проверки:
<html>
<body>
<div id="x"></div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
getVideos('cats');
});
function getVideos(query){
var url = 'https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=2&q='+query+'®ionCode=us&type=video&fields=items(id)&key=AIzaSyCCOnozV0lEfnjfMTjpc4TFExAeIGJ6Fh0';
$.ajax({
url: url,
success: function(data){
appendVideos(data);
}
});
}
function appendVideos(data){
// works here
console.log(data);
// but not in $.each
$.each(data.items, function(i, item){
$('#x').append(item.id.videoId + '<br>');
});
}
</script>
</body>
</html>
Ну, когда я предупрежу (data.items) Я получаю неопределенный в FF. – Leeish