>  기사  >  웹 프론트엔드  >  jquery가 작동하지 않는 경우 수행할 작업

jquery가 작동하지 않는 경우 수행할 작업

藏色散人
藏色散人원래의
2020-12-30 10:05:241996검색

jquery가 작동하지 않는 해결 방법: 먼저 작동하지 않는 코드 파일을 연 다음 jquery 코드를 "$(document).not('#date').click(function(){...}"으로 수정합니다.

jquery가 작동하지 않는 경우 수행할 작업

이 튜토리얼의 운영 환경: Dell G3 컴퓨터, Windows7 시스템, HTML5&&CSS3&&jquery2.0.0 버전

권장: "css 비디오 튜토리얼" "javascript 기본 튜토리얼"

jque 리 not 메소드 실패에 대한 해결책

요소를 필터링할 때 $(document)에서 직접 요소를 제거하려는 경우 $(document).not('#a')를 사용하는 것은 유효하지 않습니다

하지만 이 종류를 해결해야 합니다 예를 들어 다른 방법을 사용할 수 있습니다. 드롭다운 목록을 시뮬레이션할 때 원하는 효과는 div를 클릭하면 숨겨진 목록이 나타나고 아무 곳이나 클릭하면 드롭다운 목록이 사라지는 것입니다

<div id="date">选择日期</div>
<div id="content" style="display:none;">
<ul>
  <li>2月1日</li>
</ul>
</div>

이때 직접 쓰시면

$("#date").click(function(){
  $("#content").slideDown();
});
$(document).click(function(){
  $("#content").slideUp();
});

가 나옵니다 div를 클릭하면 드롭다운 목록이 먼저 나타났다가 사라집니다

이 문제를 해결하기 위해 대부분의 사람들이 가장 먼저 생각하는 것은 클릭 설정 시 #date 요소를 제거하는 것입니다. 문서의 이벤트, 즉

$(document).not(‘#date’).click(function(){
  $("#content").slideUp();
});

여기에서는 not()을 사용하지 않습니다.

이때 생각을 바꿔야 합니다

날짜를 클릭하는 순간 내용의 높이가 변경됩니다. 1px로 변경되고 표시가 block으로 변경됩니다

So

$(document).not(‘#date’).click(function(){
  if($("#content").css(&#39;display&#39;) == &#39;block&#39; && $("#content").css(&#39;height&#39;) != &#39;1px&#39;){
    $("#content").slideUp();
  }
});

#date

요소를 제거하는 효과를 얻을 수 있습니다. 더 생각할 것도 없습니다. SlideDown()을 사용하는 경우 오프닝을 기록할 변수를 추가해야 합니다. 동일한 효과를 얻으려면 다른 상황에서도 비슷한 방식으로 문제 설정을 해결할 수 있습니다.

프로그래밍 튜토리얼

을 방문하세요.

위 내용은 jquery가 작동하지 않는 경우 수행할 작업의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.