jQuery 플러그인_jquery 연구 노트 공유
플러그인은 특정 표준 애플리케이션 인터페이스에 따라 작성된 프로그램인 jQuery Extension이라고도 합니다. 현재 전 세계 개발자들이 작성, 검증 및 개선한 수천 개가 넘는 jQuery 플러그인이 있습니다. jQuery 개발자의 경우 이러한 플러그인을 직접 사용하면 시스템 아키텍처가 빠르게 안정화되고 프로젝트 비용이 절감됩니다.
1. 플러그인 개요
플러그인은 jQuery의 핵심 코드를 기반으로 특정 사양을 결합한 애플리케이션을 작성합니다. 즉, 플러그인도 jQuery 코드이며, js 파일 도입을 통해 삽입할 수 있습니다.
플러그인에는 다양한 유형이 있으며 대략적으로 UI 클래스, 양식 및 검증 클래스, 입력 클래스, 특수 효과 클래스, Ajax 클래스, 슬라이딩 클래스, 그래픽 및 이미지 클래스, 탐색 클래스, 종합 도구로 나눌 수 있습니다. 수업, 애니메이션 수업 등
플러그인을 도입하려면 기본적으로 다음과 같은 특정 단계가 필요합니다.
- 1. 모든 플러그인보다 먼저 jquery.js 파일을 가져와야 합니다.
- 2. 플러그인 소개
-
3. 스킨, 중국어 언어팩 등 플러그인 주변기기 소개
예를 들어 가장 일반적으로 사용되는 양식 유효성 검사 플러그인인 verify는 가장 기본적인 플러그인 파일인 jquery.validate.min.js 외에도 message_zh.js 및 다양한 국가의 기타 언어 패키지도 있습니다. 당신이 사용합니다.
이 플러그인 사용 방법은 여기서 설명하지 않습니다. MOOC.com에서 이 플러그인의 다양한 구성 항목과 확장에 대해 자세히 설명하는 jQuery 플러그인 - 유효성 검사 플러그인에 대한 동영상을 확인하실 수 있습니다. 안에.
비유하자면, 훌륭한 플러그인의 경우 자세한 문서가 필수적입니다. 문서를 자세히 읽고 로컬에서 테스트하면 다양한 플러그인을 빠르게 사용할 수 있습니다.
쿠키 관리를 위한 플러그인 등 다른 사람이 작성한 다양한 플러그인을 사용할 수도 있습니다.
플러그인은 jQuery 공식 웹사이트의 플러그인 모듈에서 찾을 수 있습니다
2. 맞춤형 플러그인
이전에는 다른 사람들이 제공하는 좋은 플러그인을 사용했는데, 사용하기 매우 편리했습니다. 시장에서 만족스러운 플러그인을 찾을 수 없고, 다른 사람들이 사용할 수 있도록 플러그인을 직접 패키징하고 싶은 경우. 그런 다음 jQuery 플러그인을 직접 작성해야 합니다.
1. 플러그인 종류
기능 분류에 따라 플러그인 형식은 다음 세 가지 범주로 나눌 수 있습니다.
- 객체 메서드(즉, 특정 DOM 요소를 기반으로 현지화되어 가장 많이 사용되는 jQuery 객체)를 캡슐화하는 플러그인입니다. 전역 기능을 캡슐화하는 플러그인(전역 캡슐화)
- 선택기 플러그인. (.find()와 유사합니다. 예: 모든 빨간색 요소를 선택하려면 color(red))
주로 다음을 포함하여 플러그인으로 인해 발생하는 다양한 충돌, 오류 및 기타 문제를 해결하는 데 사용됩니다.
- 다른 js 파일이나 다른 라이브러리와의 충돌을 피하기 위해 플러그인 이름으로 jQuery.[플러그인 이름].js를 사용하는 것이 좋습니다(alert( $.[plug-in name]) 전역 메소드가 존재하는지 확인하기 위해 );
- 로컬 개체는 jQuery.fn 개체에 연결되고 전역 함수는 jQuery 개체 자체에 연결됩니다(alert( $(selector).[플러그인 이름])를 사용하여 확인할 수 있습니다) 로컬 메소드 존재 여부);
- 플러그인 내에서 이는 현재 로컬 객체(선택기를 통해 얻은 jQuery 객체)를 가리킵니다.
- this.each를 사용하여 모든 요소를 탐색할 수 있습니다.
- 모든 메소드나 플러그인은 문제를 방지하기 위해 세미콜론으로 끝나야 합니다. (더 안전한 보안을 위해 플러그인 앞에 세미콜론을 추가할 수 있습니다.)
- 플러그인은 연결 가능한 작업을 보장하기 위해 jQuery 객체를 반환해야 합니다.
- 플러그인 내에서 $를 사용하지 마세요. 사용하려면 클로저를 사용하여 jQuery를 전달하세요. 그러면 플러그인이 계속 $를 jQuery의 별칭으로 사용하게 됩니다.
-
;(function($){//这里将$符作为匿名函数的形参 /*在此处编写代码,可使用$作为jQuery的缩写别名*/ })(jQuery);//这里将jQuery作为实参传递给匿名函数了
플러그인 요구 사항이 드롭다운 메뉴를 구현하고, 요소가 안으로 이동할 때 해당 드롭다운 목록을 표시하고, 요소가 밖으로 이동할 때 철회하는 것이라고 가정해 보겠습니다. 그리고 확장 시 텍스트 색상을 설정할 수 있습니다.
관례에 따르면 플러그인을 작성할 때 html 구조에 몇 가지 제약이 있을 수 있습니다. 이제 페이지에 다음과 같은 HTML 구조가 있다고 가정합니다.
在这里,我们就对我们的插件实现效果有了第一个要求,必须在 对于需要hover展现的元素 内部下面建立 ul 列表,且 className 必须为 nav 。(插件内部都是根据该条件来做文章)
下面就可以开始编写我们的插件了。保存为 jQuery.nav.js ,(符合上面所说的要求,默认已经导入)
;(function($){ $.extend({ //插件定义在全局方法上 "nav" : function (color){//传参,这里只是抛砖引玉,在您编写的时候,参数选项可以更加丰富,例如传入json对象等等 $('.nav').css({//对展开的下拉列表设置样式,此处在下面进行详细说明 "list-style" : "none", "margin" : 0, "padding" : 0, "display" : "none", "color":color//由用户控制hover时,展现出来列表的文字颜色 }); $('.nav').parent().hover(//这里用到了.nav的父节点(就是hover到的元素) //因为我们只能在插件要求的范围内进行设定,若是使用了外部的选择器,就违背了这个原则 function (){ $(this).find(".nav").stop().slideDown("normal");//注意我们在这里使用了jquery的动画方法 },function (){ $(this).find(".nav").stop().slideUp("normal");//注意stop()的使用,不然会有类似手风琴效果的出现,但那并不是我们需要的 }); } }); })(jQuery);
注意:这里使用css方法只是为了方便,在真实插件编写过程中,若存在如此大量的css样式编写时,推荐在外部定义css样式,例如可改写为:
插件依赖的css,需和插件一起导入html中
.hover{/*插件必须样式*/ list-style: none; margin:0; padding: 0; display: none; }
在插件内部修改。
$('.nav').addClass("hover");//将CSS与jQuery分离开来 $('.nav').css("color",color);//存在用户设置时启用,不存在就不用了(进行判断)
刚刚说的都是插件的js文件,最后要起到效果,别忘了页面的js中加上那么一句话(当前插件定义在全局方法上)
$(function (){ $.nav("#999");//调用插件实现的全局方法,并且设置其展现背景颜色为#999。 });
就这样,我们的全局插件就编写,而且调用完成了,在你的页面刷新看看,是不是已经有了效果呢?
但是,因为我们的方法定义在全局上,现在只要页面中出现了我们插件所规定的结构,就会存在hover展现效果,但是有时我们往往想要的不是这样,我们希望它在局部,在我指定的元素调用。所以我们需要对其进行一些改造,让其变成局部方法,其实也很简单:
;(function($){ $.fn.extend({//定义为局部方法 "nav" : function (color){ $(this).find('.nav').addClass('hover');//上面已经说过了,此时this指向调用该方法的元素 $(this).find('.nav').css("color",color);//在当前元素下,增加了一次find筛选,实现在对应的元素中执行。 $(this).find('.nav').parent().hover( function (){ $(this).find(".nav").stop().slideDown("normal"); },function (){ $(this).find(".nav").stop().slideUp("normal"); }); return this;//返回当前的对象 } }); })(jQuery);
我们去刷新一下浏览器。你会发现,咦,怎么没效果? 当然因为原来的代码是直接在全局调用的,现在变成局部方法了,显然就不能这样做了,需要做一点改变:
我这里就不贴html代码了,但是希望您在实践时能把上面的html代码在其下复制几份,以达到思考其实现的效果
$(function (){//这里的eq(0)代表只对第一份起到效果,复制后的没有效果。 //(你可以把上面的find筛选删除之后再试试,您会发现,他又对余下的几份起效果了) $(".list").eq(0).nav("red");//调用局部方法 });
现在回过头再把我们写的插件代码对应上面写的 插件编写的要点 ,思考一下,我们还有哪些没有做到?就会发现,基本已经能对应上了。现在我们就完成了一个下拉菜单的插件。
其实编写插件并不难,最主要的是在我们编写插件的时候,一定要时刻注意这样的要点,每一个细节都遵循在大家实践过程中总结出来的最佳实现,才能自定义实现一个良好的插件。
代码首先是写个人看的,再然后才是给机器看的。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Chrome 플러그인 확장 프로그램 설치 디렉터리는 무엇인가요? 일반적인 상황에서 Chrome 플러그인 확장의 기본 설치 디렉터리는 다음과 같습니다. 1. windowsxp에서 Chrome 플러그인의 기본 설치 디렉터리 위치: C:\DocumentsandSettings\username\LocalSettings\ApplicationData\Google\Chrome\UserData\ Windows7의 Default\Extensions2.chrome 플러그인의 기본 설치 디렉터리 위치: C:\Users\username\AppData\Local\Google\Chrome\User

사용자가 Edge 브라우저를 사용할 때 더 많은 요구 사항을 충족하기 위해 일부 플러그인을 추가할 수 있습니다. 그런데 플러그인을 추가하면 해당 플러그인이 지원되지 않는다고 표시됩니다. 이 문제를 해결하는 방법은 무엇입니까? 오늘은 에디터가 세 가지 해결 방법을 알려드리겠습니다. 방법 1: 다른 브라우저를 사용해 보세요. 방법 2: 브라우저의 Flash Player가 오래되었거나 누락되어 플러그인이 지원되지 않을 수 있습니다. 공식 웹사이트에서 최신 버전을 다운로드할 수 있습니다. 방법 3: "Ctrl+Shift+Delete" 키를 동시에 누르세요. "데이터 지우기"를 클릭하고 브라우저를 다시 엽니다.

jQuery에서 PUT 요청 방법을 사용하는 방법은 무엇입니까? jQuery에서 PUT 요청을 보내는 방법은 다른 유형의 요청을 보내는 것과 유사하지만 몇 가지 세부 사항과 매개 변수 설정에 주의해야 합니다. PUT 요청은 일반적으로 데이터베이스의 데이터 업데이트 또는 서버의 파일 업데이트와 같은 리소스를 업데이트하는 데 사용됩니다. 다음은 jQuery에서 PUT 요청 메소드를 사용하는 구체적인 코드 예제입니다. 먼저 jQuery 라이브러리 파일을 포함했는지 확인한 다음 $.ajax({u를 통해 PUT 요청을 보낼 수 있습니다.

jQuery를 사용하여 요소의 높이 속성을 제거하는 방법은 무엇입니까? 프런트엔드 개발에서는 요소의 높이 속성을 조작해야 하는 경우가 종종 있습니다. 때로는 요소의 높이를 동적으로 변경해야 할 수도 있고 요소의 높이 속성을 제거해야 하는 경우도 있습니다. 이 기사에서는 jQuery를 사용하여 요소의 높이 속성을 제거하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. jQuery를 사용하여 높이 속성을 연산하기 전에 먼저 CSS의 높이 속성을 이해해야 합니다. height 속성은 요소의 높이를 설정하는 데 사용됩니다.

제목: jQuery 팁: 페이지에 있는 모든 태그의 텍스트를 빠르게 수정하세요. 웹 개발에서는 페이지의 요소를 수정하고 조작해야 하는 경우가 많습니다. jQuery를 사용할 때 페이지에 있는 모든 태그의 텍스트 내용을 한 번에 수정해야 하는 경우가 있는데, 이는 시간과 에너지를 절약할 수 있습니다. 다음은 jQuery를 사용하여 페이지의 모든 태그 텍스트를 빠르게 수정하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 먼저 jQuery 라이브러리 파일을 도입하고 다음 코드가 페이지에 도입되었는지 확인해야 합니다. <

제목: jQuery를 사용하여 모든 태그의 텍스트 내용을 수정합니다. jQuery는 DOM 작업을 처리하는 데 널리 사용되는 인기 있는 JavaScript 라이브러리입니다. 웹 개발을 하다 보면 페이지에 있는 링크 태그(태그)의 텍스트 내용을 수정해야 하는 경우가 종종 있습니다. 이 기사에서는 jQuery를 사용하여 이 목표를 달성하는 방법을 설명하고 구체적인 코드 예제를 제공합니다. 먼저 페이지에 jQuery 라이브러리를 도입해야 합니다. HTML 파일에 다음 코드를 추가합니다.

WordPress 플러그인 설치 실패 시 오류 메시지를 처리하는 방법은 무엇입니까? 현재 가장 인기 있는 콘텐츠 관리 시스템 중 하나인 WordPress에는 풍부한 플러그인 라이브러리가 있어 사용자에게 다양한 기능 확장 및 사용자 정의 옵션을 제공합니다. 하지만 워드프레스(WordPress)를 사용하다 보면 가끔 플러그인 설치에 실패하고, 오류 메시지가 나타나 사용자들을 혼란스럽고 불안하게 만드는 경우가 있다. 이 문서에서는 몇 가지 일반적인 WordPress 플러그인 설치 실패 오류 메시지와 이러한 문제를 해결하는 방법을 소개합니다. 1. 신고

Google 크롬에서는 애니메이션 플러그인 실행을 어떻게 허용하나요? Chrome은 매우 강력합니다. 많은 친구들이 동영상 애니메이션을 보기 위해 이 브라우저를 사용하고 싶어합니다. 그러나 다양한 애니메이션 동영상을 보려면 브라우저에 애니메이션 플러그인을 설치해야 합니다. 애니메이션 플러그인을 사용하는데도 여전히 비디오에 신경 쓸 수 없습니다. 이 문제를 어떻게 처리해야 합니까? 다음으로, 애니메이션 플러그인이 Google Chrome에서 실행되도록 허용하는 구체적인 단계를 편집자가 보여드리겠습니다. 관심 있는 친구가 와서 살펴볼 수 있습니다. 애니메이션 플러그인 실행을 허용하는 Google Chrome의 구체적인 단계: 1. 먼저 컴퓨터에서 Google Chrome을 실행하고 홈페이지 오른쪽 상단에 있는 기본 메뉴 버튼을 클릭합니다(그림 참조). 2. 메인 메뉴를 연 후 아래의 "설정" 옵션을 선택하세요(그림 참조). 3. 설정에서
