Rev. 2.73

자바스크립트 프레임웍 라이브러리인 프로토타입(Prototype)의 업데이트 소식이 있습니다. 이 것은 Sam씨가 개발 중에 있는 CHANGELOG를 토대로 대충 살표본 것이기 때문에 아직 배포된 상황은 아니라고 합니다. 이전 버전과 호환되지 않는 변화가 있는 듯 합니다. 조금 걱정스럽군요...

Element, Form, 그리고 Form.Element의 메서드를 $(“sidebar”).addClassName(“selected”).show(); 와 같이 다중으로 사용할 수 있게 되었습니다. 또한 이전 버전 호환 되도록 구성된 Element.toggle, Element.show, Element.hide메서드는 더 이상 하나의 인수로 한정되지 않습니다.
Element.show(‘page’, ‘sidebar’, ‘content’);
[‘page’, ‘sidebar’, ‘content’].each(Element.show);

위 처럼 복수로 쓸 수 있답니다.(오호~ 단순 반복작업을 효과적으로 줄일 수 있겠군요.) 그리고, Form.Element$()또는 $$()를 혼용하게 됩니다. 지금은 $F()로 구분하여 사용합니다. 그 밖의 내용은 아래와 같습니다.

다중으로 사용할 수 있는 메서드들 :
Element.toggle, Element.hide, Element.show, Element.remove, Element.update, Element.replace,
Element.addClassName, Element.removeClassName, Element.observe, Element.stopObserving,
Element.cleanWhitespace, Element.scrollTo, Element.setStyle, Element.makePositioned,
Element.undoPositioned, Element.makeClipping, Element.undoClipping, Form.reset, Form.disable,
Form.enable, Form.focusFirstElement, Form.Element.focus, Form.Element.select, Form.Element.clear,
Form.Element.activate, Form.Element.disable, Form.Element.enable

- Object.clone 메서드 추가
- Form.Element.disableForm.Element.enable 메서드 추가
- Field is now simply an alias for Form.Element
- Element.Methods.getElementsByClassNameElement.Methods.getElementsBySelector 메서드 추가
- Avoid race condition when stopping an Ajax.PeriodicalUpdater
- 동기식 요청 지원 개선
- Add serialization and observation support for input type=search
- Properly decode query components in String.prototype.toQueryParams
- Array.prototype.reduce 메서드 추가 예) [1, 2].reduce() // [1, 2]
- Object.keysObject.values 메서드 추가
- Simulate non-GET/POST requests by POSTing with a _method parameter set to the actual verb
- Make Element.update() handle TABLE-related elements with the DOM API
- Sync to script.aculo.us unittest.js library as of 2006/08/29
- Add additional unit tests to test/unit/dom.html for testing Element.update and $().update
- Prevent possible exceptions on unloading the page in IE

Event Observing 의 문법
$('element').observe('click', function(e) { alert(e); });

이 글의 원문은 A Flurry of Prototype Updates입니다.

Comments