jQuery 실용 팁_jquery

PHP中文网
풀어 주다: 2016-05-16 19:03:40
원래의
1040명이 탐색했습니다.

jquery를 사용하는데 가장 중요한 것은 속성, 메소드 등에 익숙해지는 것입니다. 아래 요약이 정말 좋고, 자주 사용하는 내용을 정리했습니다

1. 페이지 요소에 대한 참조
jquery의 $()를 통한 요소 참조에는 id, 클래스, 요소 이름, 요소의 계층적 관계, dom 또는 xpath 조건 등과 같은 메서드가 포함되며 반환되는 개체는 jquery입니다. 객체(Collection 객체)에서는 DOM에서 정의한 메서드를 직접 호출할 수 없습니다.

2. jQuery 객체와 dom 객체 간의 변환
jquery 객체만이 jquery에서 정의한 메소드를 사용할 수 있습니다. dom 객체와 jquery 객체 사이에는 차이점이 있습니다. 메서드를 호출할 때 dom 객체에서 작업하는지 jquery 객체에서 작업하는지 주의해야 합니다.
일반적인 DOM 객체는 일반적으로 $()를 통해 jquery 객체로 변환될 수 있습니다.
예: $(document.getElementById("msg"))는 jquery 객체이며 jquery 메서드를 사용할 수 있습니다.
jquery 객체 자체가 컬렉션이기 때문입니다. 따라서 jquery 객체를 dom 객체로 변환하려면 항목 중 하나를 가져와야 하며 일반적으로 인덱스를 통해 검색할 수 있습니다.
예: $("#msg")[0], $("p").eq(1)[0], $("p").get()[1], $("td " )[5] 이는 dom 개체이므로 dom에서 메서드를 사용할 수 있지만 더 이상 Jquery 메서드를 사용할 수 없습니다.
다음 작성 방법이 정확합니다:
$(”#msg”).html()
$(”#msg”)[0].innerHTML; ).eq(0)[0].innerHTML;
$(”#msg”).get(0).innerHTML;

3. jQuery 컬렉션 항목을 가져오는 방법
획득한 요소 컬렉션을 사용하여 항목(인덱스로 지정됨)을 얻으려면 eq 또는 get(n) 메서드나 인덱스 번호를 사용할 수 있습니다. eq는 jquery 객체를 반환하는 반면 get(n) 및 인덱스 반환은 dom입니다. 요소 객체. jquery 객체의 경우 jquery 메서드만 사용할 수 있고, dom 객체의 경우 dom 메서드만 사용할 수 있습니다. 예를 들어 세 번째

요소의 콘텐츠를 가져오려고 합니다. 다음 두 가지 메서드가 있습니다.
$("p").eq(2).html(); //jquery 객체 메서드 호출
$("p").get(2).innerHTML; / /dom의 메소드 속성 호출

4. 동일한 함수가 set 및 get을 구현합니다.
이는 주로 다음을 포함하여 Jquery의 많은 메소드에 해당됩니다.
$("#msg") .html (); //ID가 msg인 요소 노드의 html 콘텐츠를 반환합니다.
$("#msg").html("new content");
//ID가 msg인 요소 노드의 콘텐츠에 "new content"를 html 문자열로 쓰면 페이지가 표시됩니다. 새 콘텐츠를 굵은 글씨로 표시

$("#msg").text(); //ID가 msg인 요소 노드의 텍스트 콘텐츠를 반환합니다.
$("#msg").text("new content");
//ID가 msg인 요소 노드의 콘텐츠에 "새 콘텐츠"를 일반 텍스트 문자열로 쓰면 페이지가 표시됩니다. 새 콘텐츠

$("#msg").height(); //id msg
$("#msg").height("300")를 사용하여 요소의 높이를 반환합니다. /id를 msg로 반환 요소의 높이를 300으로 설정
$("#msg").width() //id가 msg인 요소의 너비를 반환
$("#msg") .width("300"); //ID가 msg인 요소의 너비를 300으로 설정

$("input").val("); //양식 입력 상자의 값을 반환합니다. 🎜>$("input").val("test"); //테스트할 양식 입력 상자의 값을 설정합니다.

$("#msg").click(); ID가 msg인 요소의 클릭 이벤트
$("#msg").click(fn); //ID가 msg인 요소 클릭 이벤트에 대한 함수 추가
마찬가지로 흐림, 초점, 선택 및 제출 이벤트에는 두 가지 호출 방법이 있습니다

5. 컬렉션 처리 기능
jquery에서 반환된 컬렉션 콘텐츠를 반복할 필요가 없으며 jquery는 컬렉션을 처리하는 데 매우 편리한 방법을 제공합니다.
두 가지 형식 포함:
$("p").each(function(i){this.style.color=['#f00′,'#0f0′,'#00f'][ i ] })
//각각 인덱스 0, 1, 2를 사용하여 p 요소에 대해 서로 다른 글꼴 색상을 설정합니다.

$("tr").each(function(i){this.style.groundColor =[.'#ccc','#fff'][i%2]})
//테이블의 인터레이스 색상 변경 효과 얻기

$(”p”).click(function (){alert( $(this).html())})
//각 p 요소에 대한 클릭 이벤트를 추가했습니다. p 요소를 클릭하면 해당 콘텐츠가 팝업됩니다.

6.
$.extend({
min: function(a, b){return a < b?a:b; },
max: function(a, b){return a > b?a :b; }
}); //jquery에 대한 확장된 min 및 max 메서드
확장된 메서드 사용("$.method name"을 통해 호출됨):
alert("a=10, b=20,max=” $.max(10,20) ”,min=” $.min(10,20))

7. 지속적인 메소드 작성 지원
연속 쓰기라는 것은 jquery 객체에 대해 다양한 메서드를 지속적으로 호출할 수 있음을 의미합니다.
예:
$("p").click(function(){alert($(this).html())})
.mouseover(function(){alert('마우스 오버 이벤트 ')})
.each(function(i){this.style.color=['#f00′,'#0f0′,'#00f'][ i ]})

8,
요소의 스타일을 조작하는 방법에는 주로 다음과 같은 메소드가 포함됩니다.
$("#msg").css("Background") //요소의 배경색을 반환합니다.
$(" #msg") .css("배경","#ccc") //요소의 배경을 회색으로 설정
$("#msg").height(300); $("#msg"). width("200") ; //너비와 높이 설정
$("#msg").css({ color: "red", background: "blue" });//이름-값 쌍 형식으로 스타일 설정
$("#msg").addClass( ” select”); //
$(”#msg”).removeClass(”select”) 요소에 select라는 클래스를 추가합니다. //
$(”# msg” ).toggleClass("select"); //존재하는 경우(존재하지 않는 경우) select

9.Jquery에서 제공하는 이벤트 처리 기능 완료
다양한 이 이벤트 처리 방법을 사용하면 html 요소에 직접 이벤트를 작성할 필요가 없고 jquery를 통해 얻은 객체에 이벤트를 직접 추가할 수 있습니다.
예:
$("#msg").click(function(){alert("good")}) //
$("p") 요소에 클릭 이벤트를 추가합니다. click (function(i){this.style.color=['#f00′,'#0f0′,'#00f'][ i ]})
//세 가지 다른 p 요소 클릭 이벤트를 각각 설정합니다. 다른 처리
jQuery의 여러 사용자 정의 이벤트:
(1) hover(fn1, fn2): 호버 이벤트(마우스가 개체 위로 이동하여 개체 밖으로 이동)를 모방하는 메서드입니다. 일치하는 요소 위로 마우스를 이동하면 첫 번째로 지정된 기능이 트리거됩니다. 마우스가 이 요소 밖으로 이동하면 지정된 두 번째 기능이 트리거됩니다.
//마우스가 테이블 행에 놓였을 때 클래스를 over로 설정하고 나갈 때 out으로 설정하세요.
$("tr").hover(function(){
$(this).addClass("over");
},
function(){
$(this) .addClass(”out”);
});
(2) Ready(fn): DOM이 로드되고 쿼리 및 조작 준비가 되었을 때 실행될 함수를 바인딩합니다.
$(document).ready(function(){alert("Load Success")})
//페이지가 로드되면 onload 이벤트와 동일한 "Load Success" 메시지가 표시됩니다. $(fn)
과 동일 (3)ggle(evenFn,oddFn): 클릭할 때마다 호출되는 함수를 전환합니다. 일치하는 요소를 클릭하면 지정된 첫 번째 기능이 트리거되고 동일한 요소를 다시 클릭하면 지정된 두 번째 기능이 트리거됩니다. 이후 클릭할 때마다 이 두 함수에 대한 호출이 차례로 반복됩니다.
//클릭할 때마다 선택한 이름의 클래스를 추가 및 삭제를 순환합니다.
$("p").toggle(function(){
$(this).addClass("selected");
},function(){
$(this).removeClass( "selected");
});
(4) Trigger(eventtype): 일치하는 각 요소에 대해 특정 유형의 이벤트를 트리거합니다.
예:
$("p").trigger("click"); //모든 p 요소의 클릭 이벤트를 트리거합니다.
(5) 바인딩(eventtype,fn), unbind(eventtype) : 이벤트 바인딩 및 바인딩 해제
는 일치하는 각 요소에서 바인딩된 이벤트를 제거(추가)합니다.
예:
$("p").bind("click", function(){alert($(this).text());}) //각 p 요소에 대한 클릭 추가 이벤트
$("p").unbind(); //모든 p 요소에서 모든 이벤트 삭제
$("p").unbind("click") //모든 p 요소에서 모든 단일 이벤트 삭제 event

10. 여러 가지 실용적인 특수 효과 기능
그 중 전환() 및 슬라이드토글() 메서드는 상태 전환 기능을 제공합니다.
예를 들어 전환() 메서드에는 hide() 및 show() 메서드가 포함됩니다.
slideToggle() 메서드에는 SlideDown() 및 SlideUp 메서드가 포함되어 있습니다.

11. 몇 가지 유용한 jQuery 메소드
$.browser. 브라우저 유형을 감지합니다. 유효한 매개변수: safari, Opera, msie, mozilla. 예를 들어 IE인지 확인하면 $.browser.isie이고, IE 브라우저라면 true를 반환합니다.
$.each(obj, fn): 일반 반복 함수. (루핑 대신) 객체와 배열을 대략적으로 반복하는 데 사용할 수 있습니다.
예를 들어,
$.each( [0,1,2], function(i, n){ Alert( “Item #” i “: ” n); }); :
var tempArr=[0,1,2];
for(var i=0;i
alert("항목 #" i ": " tempArr[ i ]);
}

$.each( { name: “John”, lang: “JS” }, function(i, n){ Alert( “Name: ” i “, Value: 와 같은 json 데이터를 처리할 수도 있습니다. ” n ); });
결과는 다음과 같습니다.
Name:name, Value:John
Name:lang, Value:JS
$.extend(target,prop1,propN): 하나를 사용하세요. 또는 더 많은 다른 객체 객체를 확장하고 확장된 객체를 반환하려면 다음과 같습니다. 예:
$.extend(settings, options)
//설정 및 옵션을 병합합니다. . 결과는 설정을 상속하는 옵션과 동일하며 설정에 상속 결과를 저장합니다.
var settings = $.extend({}, defaults, options)//기본값과 옵션 병합 , 그리고 병합하면 기본 내용을 덮어쓰지 않고 설정으로 반환됩니다.
여러 매개변수를 가질 수 있습니다(여러 항목을 결합하여 반환)
$.map(array, fn): 배열 매핑(변환 처리) . 이후) 다른 새 배열에 저장하고 생성된 새 배열을 반환합니다. 예:
var tempArr=$.map( [0,1,2], function(i){ return i 4; }) ;
tempArr 콘텐츠: [4,5,6]
var tempArr=$.map( [0,1,2], function(i){ return i > 0 ? i 1 : null; })
tempArr 콘텐츠: [2,3]
$ .merge(arr1,arr2): 두 배열을 병합하고 중복 항목을 제거합니다.
예: $.merge( [0,1,2], [2,3,4] ) //[0,1,2,3,4] 반환
$.trim(str): 문자열 양쪽 끝의 공백 문자를 삭제합니다.
예: $.trim("안녕하세요, 잘 지내세요?"); //Return "안녕하세요, 잘 지내세요?"

12. 사용자 정의 메서드 또는 다른 클래스 라이브러리와 jQuery 간의 충돌을 해결합니다.
요소를 얻기 위해 우리가 직접 $(id) 메소드를 정의하는 경우가 많으며, 프로토타입과 같은 다른 js 라이브러리에서도 $ 메소드를 정의하는 경우가 많습니다. , Jquery는 이 문제를 해결하는 방법을 구체적으로 제공합니다.
jquery에서 jQuery.noConflect() 메서드를 사용하여 $ 변수 제어를 이를 구현하는 첫 번째 라이브러리 또는 이전에 사용자 정의된 $ 메서드로 전송합니다. 나중에 Jquery를 사용할 때는 $를 모두 jQuery로 바꾸면 됩니다. 예를 들어 원래 참조 개체 메서드 $("#msg")는 jQuery("#msg")로 변경됩니다.
예:
jQuery.noConstrict();
// jQuery 사용 시작
jQuery(”p p”).hide()
// 다른 라이브러리 사용 $()
$("content").style.display = '없음'

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿