1, 오프닝 분석
안녕하세요 여러분! 처음 두 기사에서는 "jQuery를 사용하여 플러그인을 개발하는 방법"과 절차적 디자인과 객체 지향 디자인을 결합하여 플러그인을 디자인하는 방법에 대해 주로 이야기했습니다. 두 가지 방법 모두 장점과 단점이 있습니다. 이봐요, 말도 안 돼요. 말을 줄이고 요점만 말하세요. 실제 렌더링을 직접 업로드하세요:
보시다시피 이것은 드롭다운 메뉴 플러그인입니다. 일상적인 개발 과정에서 시스템이 제공하는 기능이 때로는 별로 아름답지 않고 기능이 제한되어 있다는 느낌을 주어 사용자에게 불편을 줄 수 있습니다.
체험 형태와 사용자 상호작용이 별로 좋지 않아서 오늘은 Hey Hey를 시뮬레이션해보겠습니다. 아래에서 자세히 분석해 보겠습니다.
(2), 예시분석
(1) 먼저 이 플러그인의 기능을 확인하세요. 플러그인이 호출되는 방식과 구성 매개변수 설명을 살펴보겠습니다. 다음 코드:
"var itemSelector = new ItemSelector()"에는 두 개의 매개변수가 포함되어 있습니다. 첫 번째는 dom 노드 객체이고, 두 번째는 플러그인 매개변수 옵션입니다. "currentText"는 " ItemSelector" 플러그인입니다. 설명합니다.
"items"는 텍스트 설명 및 옵션 값을 포함하여 "ItemSelector" 항목의 속성을 포함하는 배열입니다. "disabled"는 목록 항목의 가시성을 나타내고, 0은 표시를 나타내고, 1은 표시할 수 없음을 나타냅니다.
"change"는 선택 시 작업 콜백 함수를 나타내며, 옵션 데이터가 매개변수 형태로 반환됩니다.
(2), 관련된 기능은 무엇입니까
표시 가능한 렌더링은 다음과 같습니다.
표시 불가능한 렌더링은 다음과 같습니다.
둘의 차이점은 표시할 수 없는 상태 데이터는 반환되지 않으며, 플로팅하면 아무런 효과가 없다는 것입니다.
3) 학습용 전체 코드 이 코드는 디렉토리 구조 및 관련 파일을 포함하여 테스트되었습니다.
(1),html
(3),"ItemSelector.js"
(4),最后总结
(1) ,면向对象적 思考方式합리분리析功能需求。
(2),以类的方来组织我们的插件逻辑。
(3), 不断寀(3), 不断设计进行实例, 如何进行审过对 不要设计过島, 要游刃有余, 推荐过程化设计与면向对象思想设计상합합。
(4),下篇文章中会扩能,比如“모드”这个属性,为"1"时支持checkbox多选模式,现在只是默认下拉模式。
本文先到这里了,后续我们再继续讨论,希望小伙伴们能够喜欢本系列文章。