2008-11-11 3 views

답변

41

, 선택기 [attribute=value]는 속성 "배경 컬러"를 포함하지 않는<span> 때문에 작동하지 않습니다. 주어진

$('#someDiv span[background-color]').size(); // returns 0 

:

$('div#someDiv span').filter(function() { 
    var match = 'rgb(0, 0, 0)'; // match background-color: black 
    /* 
     true = keep this element in our wrapped set 
     false = remove this element from our wrapped set 
                 */ 
    return ($(this).css('background-color') == match); 

}).css('background-color', 'green'); // change background color of all black spans 
+0

요소 ID에 대해 어떻게 동일한 작업을 수행 하시겠습니까? 동일한 ID에 5 개의 ID가있는 경우 어떻게 일치시키고 배경을 지정한 다음 동일한 ID를 찾으면 되나요? – Tom

+0

@ 톰 그건 좀 까다 롭습니다. 왜냐하면 잘 쓰면 5 개의 아이디가 없어야합니다. ID는 해당 페이지에서 고유해야하며 둘 이상을 사용하면 javascript와 잘 작동하지 않습니다 (처음 발견 한 것만 큼). 클래스로 변환 할 수 있습니까? – Owen

+0

그것은 나를 위해 일했다. 사소한 변화와 함께. 검사 할 때 색상 코드는 RGB로 표시되지만 코드가 실행되면 #XXXXXX가 작동합니다. $ (document) .ready (function()/* DOM 준비 후 스크립트 실행 */{ \t \t $ ('# MyId tr ') .each를 (함수() { \t \t \t VAR의 yellowmatch ='#FFFFCC '; \t \t VAR의 redmatch ='#의 ffd7d7 '; \t \t \t VAR의 greenmatch ='#의 e1ffe1 '; \t \t \t 경우 ($ (this) .css ('background-color') == redmatch) \t \t \t { }\t \t \t \t \t 경우 ($ (이) .CSS ('배경색') == yellowmatch) \t \t \t \t \t {} \t \t \t \t 경우 ($ (이) .CSS ('배경색') == greenmatch) \t \t \t \t { \t \t \t \t }}); }}); – Sangeet

-6

속성 선택기 [attribute = value]를 사용하여 특정 속성 값을 찾습니다. 내가 제대로 질문을 이해한다면

#id_of_the_div span[background-color=rgb(255,255,255)] 
+3

것은이 작동하지 않습니다

// css .one, .two { background-color: black; } .three { background-color: red; } // html <div id="someDiv"> <span class="one">test one</span> <span class="two">test two</span> <span class="three">test three</span> </div> 

여기 를 작동하는 코드 조각의 당신은 아무것도 일치하지 않습니다 확인하기 위해 신속하게 밖으로 테스트 할 수 있습니다 background-color는 css 속성이고 html 속성이 아니기 때문에 – Alp

관련 문제