2012-03-22 3 views
0

jquery와 json의 내 배경이 매우 약하므로 tumblr API를 배우고 있습니다. 가장 최근의 "일반 게시물"의 첫 번째 사진에서 src 특성을 가져오고 싶습니다. 게시물의 이미지에는 "main"클래스가 있습니다.jquery와 JSON을 사용하여 tumblr 텍스트 게시물에서 사진 가져 오기

지금까지 이미지 이름/범위를 포함하는 하이퍼 링크로 게시물 제목을 스팬 및 게시물 URL을 가져올 수있었습니다.

$(document).ready(function() { 
$.getJSON('http://features.futurevague.com/api/read/json?callback=?', 
    function(response) { 
     $('a#feat0').attr('href',response.posts[0].url); 
     $('span#feat0').wrapInner(response.posts[0]['regular-title']); 
     $('img#feat0').attr('src',response.posts[0]['regular-body'].find('img.main')[0].attr('src')); 
}); 

});

그러나 세 번째 기능은 작동하지 않으며 잘못 작성되었을 수 있습니다.

내 HTML이 같은 모습에 컨텐츠를 내장하고있어 :

 <a href="#" id="feat0"> 
     <div class="imgholder"> 
      <img src="#" class="main" id="feat0"> 
     <span id="feat0"></span></span> 
     </div> 
    </a> 

그래서 JQuery와 .find() 메소드를 사용하여 어떤 도움?

+0

파이어 버그에 어떤 오류가 있습니까? – gpasci

+0

@gpasci 나는 방화범에 너무 익숙하지 않다. 그러나 크롬의 검사관은 img 스크립트가있는 줄에 다음과 같이 나에게 "Uncaught TypeError : * HTML 형식의 tumblr 게시물의 본문 전체에 * 아무런 방법도 없다"를 찾았다. ' " –

+0

response.posts [0] ['regular-body ']의 값은 무엇입니까 ?? – Eric

답변

0

으로 봅니다. 또한, response.posts의 값을 게시 [0] [ '정규 몸'],이 범위에서 ID를 제거 .. 도움 게시물의 코멘트에서

$('#feat0').find('img:first').attr('src', response.posts[0]['regular-body']); 

갈 것이다 : 응답을 .posts [0]은 HTML이 아닌 String입니다. 따라서 "찾기"를 사용할 수 없습니다. 이미지 소스를 추출하려면 정규식 또는 indexOf로 이동해야합니다.

+0

좋아,이 예제를 얻을 수 있을까요? –

+0

예를 들어 ??? – Eric

+0

indexOf를 사용하여 요소의 속성을 가져 오는 방법의 예입니다. –

0

아마 regular-body 따라서 DOM 선택이 작동하지 않습니다, 단지 문자열입니다 .. 당신은 우선, 같은 값이 개 ID를하지 말았어야

$(response.posts[0]['regular-body']).find('img.main')[0].attr('src') 
관련 문제