> 웹 프론트엔드 > JS 튜토리얼 > 사용자 정의 object_javascript 기술에 사용자 정의 이벤트에 대한 지원을 추가하는 방법에 대한 튜토리얼

사용자 정의 object_javascript 기술에 사용자 정의 이벤트에 대한 지원을 추가하는 방법에 대한 튜토리얼

WBOY
풀어 주다: 2016-05-16 19:05:47
원래의
1683명이 탐색했습니다.

나는 보통 다른 사람이 작성한 코드를 읽지 않습니다. 왜일까요? 피곤한! 게다가 이 동지가 준 것은 압축되어 있었다! 땀. . . 날 시험해봐, 그렇지? 그리고 이 친구는 예제코드도 알려주지 않았고, 코드에 문제가 없다고만 하더군요. 나는 그것을 "깨기" 위해 열심히 노력했지만 내 뇌 세포가 너무 빨리 죽었습니다! 바보가 되기 전에 나는 아래를 내려다보지 않기로 결심했다. 그냥 사용자 정의 개체에 사용자 정의 이벤트에 대한 지원을 추가하는 것이 아닌가요? 예제를 하나 써보겠습니다. 튜토리얼이라 해도 이해가 안 되면 할 수 있는 게 없어요! 나는 당신을 위해 코드를 작성하고 당신이 돈을 받고 팔 수 있도록 할 만큼 어리석지는 않을 것입니다!
좋아요, 제가 작성한 코드는 다음과 같습니다. 주의하세요:


[Ctrl A 모두 선택 참고: 외부 J를 도입해야 하는 경우 실행하려면 새로 고쳐야 합니다.
]

In 이 예에서는 사용자 정의되었습니다. A: JCEvent, c1, c2, c3은 모두 해당 인스턴스입니다.
각 인스턴스에는 일반적으로 개체의 컨테이너로 사용하는 oOutline이 있습니다. pParent는 사용자 정의 개체가 표시되는 위치를 나타내는 데 사용되며, 지정되지 않은 경우 document.body입니다.

예제에서는 onCreate, onChangeSkin, onClick의 세 가지 맞춤 이벤트를 정의했습니다.
onCreate는 create 메소드에서 트리거됩니다.
onChangeSkin은 setSkin 메소드에서 트리거됩니다.
onClick은 oOutline.onclick에서 실행됩니다.

호출 순서:
create 메소드에서 onCreate가 호출되므로 c1.create()보다 먼저 c1.onCreate를 선언해야 합니다.

이벤트 매개변수 참조:

this.setSkin = function(pSkin){
var oldSkin = oOutline.className;
oOutline.className =

if(typeof this.onChangeSkin == "function")
this.onChangeSkin(oldSkin,pSkin)
}


this.onChangeSkin(oldSkin,pSkin)
이렇게 하면 각 인스턴스에서 oldSkin과 newSkin을 사용할 수 있습니다.

예:
c1.onChangeSkin = function(pOld,pNew){
Alert("onChangeSkin 이벤트 n은 c1의 스킨을 설정합니다: n new skin: " pNew " n old skin: " pOld) ;
}


또한 예에서는 다음과 같습니다.

$.$css = function(pKey,pValue,p){
var obj = p ? $.$ (p) : this;
obj.$css = $.$css;
}

이 단락 Object.prototype.$css = function(...) 작성은 전혀 실패했습니다. 그 이유는 여기서 논의 범위를 벗어납니다.


할 말이 없으니 그냥 공란으로 두세요. 이해가 안 되시는 분들을 위해 자바스크립트 지식을 키워보려고 합니다.
여담: 항상 jQuery, 프로토타입, json 등을 다루지는 마세요.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿