TypeError : p.easing [this.easing]은 함수가 아닙니다.


96

jQuery로 div 요소를 표시하려고 할 때 다음 오류가 발생했습니다.

[23:50:35.971] TypeError: p.easing[this.easing] is not a function @ file:///D:/html5%20puzzle/jquery.js:2

관련 기능은 다음과 같습니다.

function showWithAnimation(){                  
  console.log('animation called');
  $('#popup').show();
  $("#popup").css({"top": "30%", "left": "30%"})
             .animate({top:(($(window).height()/2)-($('#popup')
             .outerHeight()/2))-70}, 1000, 'easeOutBounce')
             .show();
}

이 함수는 바운스 애니메이션으로 div를 표시하는 역할을하지만 div는 표시되지만 바운스 효과는 없습니다.

편집하다:

다음과 같이 CDN에서 jQuery 및 jQueryUI 라이브러리를 포함하고 있습니다 (순서대로).

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'></script>
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'>
</script>

답변:


142

확장 된 여유 옵션을 위해 jQueryUI를 포함해야합니다.

다운로드에 여유 만 포함하거나 최소한 기본 라이브러리와 여유 만 포함하는 옵션이있을 수 있다고 생각합니다.


10
CDN에서이 파일을 포함하고 있습니다.이 파일 <script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'></script> 입니까? 아니면 다른 파일을 포함해야합니까?
Malloc

1
예,하지만 항상 같은 문제가 발생했습니다. 내 편집 내용을 살펴보세요. :)
Malloc

2
오, 고쳤습니다. jQuery-min과 jQuery를 같은 파일에 포함 시켰습니다. 그건 제 실수였습니다. 도움을 주셔서 감사합니다 :)))
Malloc

3
무슨 말이야? 어떻게 고쳤나요?
max4ever

1
예, 여전히 동일한 오류가 발생하지만 jquery 소스 파일을 하나만 포함했습니다.
Costa

18

사용자 정의 jQuery UI 빌드 (예 : bower)가있는 사용자의 경우에있는 효과 코어를 추가하십시오 ..\jquery-ui\ui\effect.js.


1
이펙트 하나만 사용하면 되었기 때문에 import "jquery-ui/ui/effects/effect-slide". 팁 주셔서 감사합니다, Tim!
aried3r

13

이것을 포함하면 나를 위해 일했습니다.

섹션에 아래에 언급 된 줄을 포함하십시오.

<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.min.js'>


10

Jquery 여유 플러그인은 버전 1.2부터 효과 함수 이름을 변경했습니다. 여유에 따라 일부 자바 스크립트가 있고 올바른 효과 이름을 호출하지 않으면이 오류가 발생합니다.


5

div에서 슬라이드 효과를 시작하는 동안 오늘이 오류가 발생했습니다. 위의 'I Hate Lazy'(내가 upvoted)의 답변 덕분에 사용자 지정 jQuery UI 스크립트를 찾고 실제로 jQuery ui 웹 사이트 http : // jqueryui 에서 직접 자신의 파일을 만들 수 있습니다 . com / download / . 원하는 효과를 표시 한 다음 다운로드 만하면됩니다.

슬라이드 효과를 찾고있었습니다. 그래서 먼저 모든 확인란을 선택 취소 한 다음 '슬라이드 효과'확인란을 클릭하면 페이지가 자동으로 슬라이드 효과를 작동하는 데 필요한 다른 구성 요소를 확인합니다. 아주 간단합니다.

easeOutBounce는 'Effects Core'확인란을 선택해야하는 여유 효과입니다.


4

Bootstrap을 사용하는 경우 jQuery 스크립트 태그 아래에 포함 된 경우 Bootstrap의 jQuery가 jQuery 스크립트 태그를 다른 버전으로 덮어 쓸 수도 있습니다. jQuery의 자체 CDN을 포함하고 Bootstrap이 제공하는 jQuery 스크립트 태그를 삭제하는 것이 저에게 효과적이었습니다.


1

이 오류를 겪고있는 사람을 위해 버전을 업데이트하고 효과 코어가 있는지 확인하고 여전히 머리를 긁적입니다. animate () 및 기타 구문에 대한 문서를 확인하십시오.

내가 한 모든 것은 "linear"대신 "Linear"를 작성하고 [this.easing]이 함수가 아닙니다.

$ ( "# main"). animate ({scrollLeft : '187px'}, 'slow', 'Linear'); //나쁜

$ ( "# main"). animate ({scrollLeft : '187px'}, 'slow', 'linear'); //좋은


0

문제를 발견했습니다. CDN을 사용하지 마십시오 (이로 인해 문제가 발생합니다!). 대신 jquery 파일을 서버에 로컬로 저장하면 문제가 해결됩니다.


0

jquery.easingcdn 가져 오기 가 저에게 효과적이었습니다.

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.4.1/jquery.easing.min.js"></script>

웹 페이지 하단에 추가 할 수 있습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.