CSS 계산 스타일 float : left 또는 float : right 인 모든 요소를 선택하려고합니다. JQuery 문서에서 사용할 수있는 속성 선택기를 볼 수 있지만 속성이 아닌 CSS 속성에 관심이 있습니다.JQuery로 페이지의 모든 부동을 선택할 수 있습니까?
이러한 기능의 가능한 사용 예는 페이지의 모든 표시 : 없음 요소를 선택하는 것입니다.
CSS 계산 스타일 float : left 또는 float : right 인 모든 요소를 선택하려고합니다. JQuery 문서에서 사용할 수있는 속성 선택기를 볼 수 있지만 속성이 아닌 CSS 속성에 관심이 있습니다.JQuery로 페이지의 모든 부동을 선택할 수 있습니까?
이러한 기능의 가능한 사용 예는 페이지의 모든 표시 : 없음 요소를 선택하는 것입니다.
CSS를 통해 플로팅 스타일을 적용하면 클래스 이름을 선택하고 필요에 따라 표시/숨기기를 수행 할 수 있습니다.
<style>
.right { float: right; }
.left { float: left; }
</style>
<div class='left'>...</div>
<div class='right'>...</div>
$('.left,.right').hide();
$ ('. left.right')는 두 클래스가 모두 포함 된 요소를 찾고 있으므로이 경우 비어 있습니다. $ ('. left, .right')를 의미 했습니까? –
재미있는 점은 내가 원래 그런 식으로 가지고 있었고 그 다음에 설명서를 잘못 읽었어야한다는 것입니다. 예, 쉼표가 있어야합니다. – tvanfosson
이 클래스 해킹없이 트릭을 수행해야 새 선택기 만들기
$(":hidden")
은 다음과 같습니다
$("*").filter(function() {
return /^(left|right)$/.test($(this).css("float"))
})
을 그건 그렇고, jQuery를 이미 모든 display: none
요소를 찾을 수있는 좋은 방법이 일종의 재미, 그래서 그랬어 :
우사 GE :
: hasCssAttr (특성, 값 ...)
Property
는 사용이
value
이 값 (들)이 일치하고 싶은 것입니다 비교하고 싶은 CSS 속성입니다 에 대해
$(':hasCssAttr(float, left)').css('float', 'right');
소스 루크 (두 개 이상있을 수 있습니다) :
를$.expr[':'].hasCssAttr = function(objNode, intStackIndex, arrProperties, arrNodeStack) {
var arrArguments = arrProperties[3].split(',');
var cssPropVal = $(objNode).css(arrArguments[0]); // need for speed
for (var i = 1 ; i < arrArguments.length ; i++)
if (cssPropVal == arrArguments[ i ].replace(/^\s+|\s+$/g,""))
return true;
return false;
}
기본적으로 모든 'css 속성을 선택합니다. 난 당신이 단지 하나의 가치, 불필요한 종류를 원한다면 당신은 루프를 제거 할 수 있다고 가정합니다. 또한, 당신이 수치 비교를 할 수 있도록 평가에서 이것을하는 것이 더 흥미로운 지 궁금합니다. 어쨌든. 거기는.
+1 자신 만의 유연한 선택기를 만드십시오. 가능한 경우 항상 유연한 솔루션을 선호합니다. – KyleFarris
큰 질문! – KyleFarris