2012-07-21 4 views
0

처음에는 미안하지만 어리석은 질문인데 문제는 실제로 해결할 수 없습니다. load 함수를 사용하여 html 파일을로드하는 중입니다. load 함수로 html 파일을로드하면 jquery가있는 선택기가 실제로 작동하지 않고 css에서만 작동합니다.jquery로드 된 HTML div 요소 선택자

(I 사용 CodeIgniter의)

로드

$('.get_posts').hide().load('stream/load_posts').fadeIn(800); 

그래서이 HTML로 (뷰) 파일이

<?php if(isset($stream_posts)): ?> 
<?php foreach($stream_posts as $sp): ?> 
<div id="sp_<?php echo $sp->sid; ?>" class="row stream-posts"> 
    <div class="span1 stream-thumb"> 
     <ul class="stream-thumbnails unstyled"> 
      <li> 
      <a href="#" class="stream-thumbnail"> 
       <img src="http://placehold.it/60x60" alt=""> 
      </a> 
      </li> 
     </ul> 
    </div> 
    <div class="span5 stream-content"> 
     <a href="#" class="author"><?php echo $sp->first_name ." ". $sp->last_name; ?></a> 
     <p id="stream-text"> 
      <?php echo nl2br(auto_link($sp->text)); ?> 
     </p> 
    </div> 
</div> 
<?php endforeach; ?> 
<?php endif; ?> 

난에 있도록 CodeIgniter를 따르는 모든 포함 된 HTML 이 줄 <?php echo nl2br(auto_link($sp->text)); ?> 자동으로 URL과 전자 메일 주소를 변경합니다. c 링크에 캐릭터에 ontained, 그래서 난 자동 링크가있을 때 나는 그에게에서 oEmbed 클래스를 추가하고 싶습니다, 그래서 난 다음

$("p.stream-content a").addClass('oembed'); 

과 그 작동하지 않는 시도, 같은 셀렉터와 CSS로 시도 앵커 태그를 빨간색으로 착색하여 차이점은, 내가 발견 한 것보다 jquery 선택기 부분이 작동하지 않는 이유는로드를 주석 처리하고 PHP를 통해 결과를 표시하면 jquery 클래스도 잘 추가된다는 것입니다.

다른 사람이 내게이 힌트를 줄 수 있습니까?

당신이 load()의 콜백에 클래스를 추가하려고 했

답변

2

감사? 내가 class="stream-content"

+0

미안 그 어디에 내 오타 더 <p> 요소가 없기 때문에 $('p.stream-content... 변경,하지만 감사 한

$('.get_posts').hide().load('stream/load_posts', function() { $("#stream-text a").addClass('oembed'); }).fadeIn(800); 

참고 콜백와 함께 작동, 덕분에 너무 많이 (답변을 받아 들일 것입니다 기다릴 필요가 1 분) – Side

+0

도와 드리겠습니다 : D – Vithozor