jquery에 div가 있는지 확인
가능한 중복 :
jQuery에 대한 "존재"기능이 있습니까?
예, 이것이 많이 요청되었습니다. 그러나이 검색에 대한 Google 검색 결과에 다른 방법이 표시되어 있기 때문에 혼란 스럽습니다 (아래에 나열되어 있음)
$(document).ready(function() {
if ($('#DivID').length){
alert('Found with Length');
}
if ($('#DivID').length > 0 ) {
alert('Found with Length bigger then Zero');
}
if ($('#DivID') != null ) {
alert('Found with Not Null');
}
});
div가 존재하는지 확인하는 올바른 방법은 3 중 어느 것입니까?
편집 : 사람들이 세 가지 다른 방법으로 더 나은 접근 방식을 배우고 싶지 않다는 것을 알면 참담합니다. 이 질문은 실제로 "div가 있는지 확인하는 방법"에 관한 것이 아니라 어떤 방법이 더 나은지, 누군가 설명 할 수 있다면 왜 더 나은지에 관한 것입니다.
첫 번째는 가장 간결한 것입니다. 처음 두 개는 동일하지만 첫 번째는 조금 짧으므로 바이트를 절약 할 수 있습니다. 세 번째는 명백하다. 왜냐하면 그 문제에 대해 객체가 결코 null이거나 거짓이 아니기 때문이다.
단순히 ID의 존재를 확인하는 경우 jQuery 로 이동할 필요가 없습니다 .
if(document.getElementById("yourid") !== null)
{
}
getElementById
null
찾을 수 없으면를 반환 합니다.
참조 .
그러나 나중에 jQuery 객체 를 사용할 계획이라면 다음과 같이 제안합니다.
$(document).ready(function() {
var $myDiv = $('#DivID');
if ( $myDiv.length){
//you can now reuse $myDiv here, without having to select it again.
}
});
선택기는 항상 jQuery 객체를 반환 하므로 확인할 필요가 없습니다 null
( 확인해야 할 경우가 있지만 관심 null
이 없습니다).
선택기가 아무것도 찾지 못하면 length === 0
"거짓"입니다 (거짓을 부울로 변환 할 때). 따라서 무언가를 찾으면 "truthy"여야합니다. 따라서> 0을 확인할 필요가 없습니다. 단지 "truthyness"일뿐입니다.
karim79가 언급했듯이 첫 번째가 가장 간결합니다. 그러나 일부 자바 스크립트 / jQuery 프로그래머에게는 true
if 문에서 0이 아닌 값이 아닌 값을 평가한다는 것이 분명하지 않거나 알 수 없으므로 두 번째가 더 이해하기 쉽다고 주장 할 수 있습니다. 그리고 그로 인해 세 번째 방법이 잘못되었습니다.
참고 URL : https://stackoverflow.com/questions/6899175/check-if-a-div-exists-with-jquery
'development' 카테고리의 다른 글
자바의 숨겨진 기능 (0) | 2020.03.16 |
---|---|
Kinect의 v2.0 Motion을 BVH 파일로 저장 (0) | 2020.03.16 |
JavaScript를 사용하여 새 페이지를로드하지 않고 브라우저에서 URL을 변경하십시오. (0) | 2020.03.16 |
주요 C # DI / IoC 프레임 워크는 어떻게 비교됩니까? (0) | 2020.03.16 |
임의의 행을 선택하는 가장 좋은 방법 PostgreSQL (0) | 2020.03.16 |