[jquery][jQuery 기술 내막] 읽기 노트 1

1711 단어 jquery
jQuery( object )
jquery는 대상을 구성할 때, 아주 좋은 css 선택기로 DOM을 찾을 수 있을 뿐만 아니라,javascript 대상을 전송하여 jquery 대상을 생성할 수도 있다.
// JS

var foo = {name:"foo",hello:"word"};

var $foo = $(foo);

$foo.on("custom",function(){

	console.log(this.name +" "+ this.hello);

});



$(function(){

	$("#btn").bind('click',function(){

		$foo.trigger("custom");

	});

});



// html

<button id="btn">  </button>


   jQuery() new
jquery의 구조 함수에 대해 사실은 다른 방법으로 이해할 수 있기 때문에 저는 jquery의 코드 구조에 따라 다음과 같은 코드를 썼습니다.
(function(window,undefined){

	var factory = (function(obj){

		var NewObj = function(obj){

			return new NewObj.fn.init(obj);

		}



		NewObj.fn = NewObj.prototype={

			constructor:NewObj,

			init:function(obj){

				this.context = {

					name:obj

				};

				return this;

			},

			print:function(){

				console.log(this.context.name);

			}

		}

		NewObj.fn.init.prototype = NewObj.fn;

		return NewObj ;

	})();



	window.factory = window.FC = factory;



})(window);



FC("hello word").print();

원본 코드에서 위 코드의factory와NewObj는 사실 모두 Jquery를 작성했기 때문에 개념의 혼란을 초래하기 쉽다.그래서 나는 구별하기 위해 이름을 바꾸었다.
우리는 jquery의 전체 구조가 사실상 하나의 공장 모델에 해당한다는 것을 분명히 볼 수 있다.factory는 외부에서 전송된 대상 obj에 따라 내부 new에서 NewObj 대상을 생성합니다.
이렇게 하면 NewObj 객체를 작성할 때 new 연산자를 생략할 수 있습니다.따라서 NewObj 객체를 쉽게 만들고 호출할 수 있습니다.
  getElementById
IE7 이하 및 일부 Opera 버전에서는 getElementById로 요소를 가져올 때name을 누르면 찾습니다.아부지, 이것도 돼??!!
 
createDocumentFragment를 호출하여 문서 삽입을 하면 성능을 뚜렷하게 향상시킬 수 있습니다.

좋은 웹페이지 즐겨찾기