2011-12-23 6 views
4

일부 토글 링을 수행하는 플러그인을 작성하고 사용할 수있는 여유 메서드를 확인하는 방법이 필요합니다. 가능한 경우 jQuery UI easing methods을 지원하고 싶습니다. 그것들은 custom builder에있는 효과 패키지에있는 것처럼 보이지만, 검사하지 않을 수 있기 때문에 jQuery UI를 사용할 수 있는지 확인하는 것으로 충분하지 않습니다. 나는 이징 방법을 사용할 수 있는지 구체적으로 확인하고 싶습니다.jQuery UI 여유 메서드를 사용할 수 있는지 확인하십시오.

답변

7

는 당신이이 방법을 확인할 수 있습니다

if ($.easing && $.easing.easeInOutQuad) { 
    // Use easing function easeInOutQuad 
} else { 
    // Use some other stuff 
} 

는 UI의 핵심에 선 597에서 참조 ( http://jqueryui.com/ui/jquery.effects.core.js).

링크가 깨졌지만 여전히 작동해야합니다. 입력이 'linear'입니다

function verifyEasing(input) { 
    return 'linear' === input || ($.easing && $.easing.hasOwnProperty(input)) ? input : false; 
} 

경우 또는 jQuery를 UI에서 사용할 수있는 경우 다음 그것을 반환합니다

+0

니스 발견-이 날 올바른 방향으로 생각하고 있어요 . 내가 사용을 끝내기 위해 내 답변을 아래에서보십시오. – ryanve

1

여기 내가 사용하는거야 생각입니다. 그렇지 않으면 false을 반환합니다. 나는 당신이 false.toggle() 이징 값으로 건네 주면 'swing'이 기본값이 될 것입니다. 특히 swing을 확인할 필요가 없습니다. 이처럼 :

$('.target').toggle(800, verifyEasing(input)); 

당신이 너무 후 사용자 정의 여유 기능을 확인하려면 제 생각 엔 당신은 부울에 $.isFunction 검사를 추가 할 수 있습니다

'linear' === input || ($.easing && $.easing.hasOwnProperty(input)) || $.isFunction(input) 
+0

false를 반환하는 대신'null'을 반환합니다 - 늦은 코멘트 :) – andlrc

관련 문제