2015-02-06 7 views
0

여기 이해 못하는 문제가 있습니다.JQuery 클래스 선택기, "-"(하이픈)을 사용하여 요소 선택

웹 사이트 (저에게 쓰여지지 않음)를 업데이트하고 일부 문제를 해결하려고합니다. JS 스크립트 파일의 어딘가에 특정 요소에 인라인 CSS 속성 높이를 추가하는 것이 있습니다. 이를 제거해야합니다. 이미 실행중인 곳에서 발견되었습니다.

HTML에서

, 나는 "스 와이프 왼쪽"과 "슬쩍"

그리고 유일한 코드는 내가 JS 파일에 관련있는 클래스 '스 와이프 제어 ","슬쩍 오른쪽 "을 가진 요소를"슬쩍 swipe- * "뿐만 아니라이 높이로 업데이트되고있다"

jQuery('.swipe').each(function(){ 
    jQuery(this).height(jQuery(window).height());    
    console.log(">>>>> "); 
    console.log(this); 
}); 

클래스의 모든 요소를 ​​발견하고 얼마나 많은 개체를 찾으려면이 변경되었습니다

jQuery('.swipe').height(jQuery(window).height()); 

아래의 하나입니다. "

정상입니까? (이미 확인 된 jQuery 클래스 선택기 설명서)

+3

* 슬쩍 "클래스와 모든 요소"- \ * "뿐만 아니라이 높이 업데이트됩니다."* 아니,이 *이 * 코드가 아닌 아니다; 그들도 ** ** 클래스'swipe '(그 뒤에'-xyz'가없는)가 아니면. –

+0

아니, 그런 식으로 작동하지 않습니다, 여기를 참조하십시오 : http://jsfiddle.net/7fuogouj/ 오직 5 요소를 찾습니다. – HaukurHaf

+2

다른 사람들이 문제를 재현 할 수 있도록 충분한 코드를 포함하십시오. 이에 대한 도움을 얻으려면 [최소의 완전하고 검증 가능한 예제를 만드는 방법] (http://stackoverflow.com/help/mcve)을 읽으십시오. 이 질문은 문제 진단에 도움이되는 코드가 없습니다. –

답변

0

설명에 따라 여기에 복제를 확인하십시오. "Run"이라고 표시된 버튼을 클릭하면 하나 이상의 div가 높이를 변경하는 것을 볼 수 있습니까?

높이가 변경되는 div가 여러 개 표시되면 예, jQuery가 아닌 브라우저의 비정상적인 동작입니다. 증가 된 높이의 div가 하나만 표시되면 올바른 결과를 얻습니다.

업데이트 :

또한, 당신의
"swipe-*"
클래스가 실제로
"swipe -*" like "swipe -left"
하지 않습니다 있는지 확인하십시오.

function changeSwipe(){ 
 
    $(".swipe").height(300); 
 
}
.box { 
 
    width: 200px; 
 
    height: 100px; 
 
    background: red; 
 
    border: 1px solid; 
 
    float: left; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="swipe box">swipe</div> 
 
<div class="swipe-right box">swipe-right</div> 
 
<div class="swipe-whatever box">swipe-whatever</div> 
 
<div class="no-swipe box">no-swipe</div> 
 
<button onclick="changeSwipe();">Run</button>