2014-11-16 2 views
1

작동하지 않습니다 jQuery.find와 CSS를 조작 이미지를 추가 :선택은 내가 이것을 쓴

나는 새로운 이미지를 추가 할
<!doctype html> 
<html> 
<head> 
    <script src="js/jquery-2.1.1.min.js"></script> 
    <script> 
    $(document).ready(function() { 
     var people = '<li><img src="http://lorempixel.com/g/400/200/"></li>'; 
     people += '<li><span><img src="http://lorempixel.com/g/300/200/"></span></li>'; 
     var $images = $(people); 
     $('ul').prepend(people); 
     $images.find('img').css({ 
     'display': 'none' 
     }); 
    }); 
    </script> 
</head> 
<body> 
    <ul> 
    <li> 
     <img src="http://lorempixel.com/g/200/200/"> 
    </li> 
    <li> 
     <img src="http://lorempixel.com/g/300/300/"> 
    </li> 
    <li> 
     <img src="http://lorempixel.com/g/300/300/"> 
    </li> 
    </ul> 
</body> 
</html> 

(문서가 준비가되면 나중에 아약스를 통해 추가) 다음 조작 그것들은 CSS 속성을 수정하여 만들었지 만이 간단한 예제에서도 작동하지는 않습니다.

$images.find('img')이 작동하지만 체인이 .css({'display':'none'}); 인 것은 아닙니다.

답변

0
$(document).ready(function() { 
    var people = '<li><img src="http://lorempixel.com/g/400/200/"></li>'; 
     people += '<li><span><img src="http://lorempixel.com/g/300/200/"></span></li>'; 

    var $images = $(people); 
    $images.find('img').css('display', 'none'); 

    // or $images.find('img').css({'display': 'none'}); 

    $('ul').prepend($images); 
}); 
모든 이미지를 숨길 수

http://jsbin.com/dozapi/1/

0

$images은 아직 DOM에없는 요소를 보유하고 있습니다. 즉, display 속성을 수정해도 눈에 보이는 영향은 없습니다.

대신 수행 할 수 있습니다

... 
$('ul').prepend(people).find('img').css({ 
    display: 'none' 
}); 
+0

, 나는 영업 이익은 jQuery를 throguh 추가 한 이미지를 숨기려고 생각합니다. –

+0

OP는 OP에서'.prepend (people)'을 사용했기 때문에 ** ** DOM에 있습니다. –

+0

예 @techfoobar jQuery를 통해 추가 된 이미지 만 조작하면 솔루션에있는 모든 img가 숨겨집니다. – Ferex