Rev. 2.73

bulletproofajax.gif

Jeremy Keith씨(DOM Scripting 저자)는 '방탄 Ajax'라는 새 책을 출간했습니다. 내용은 안봐서 모르겠고(;), 예제로 공개한 PHP와 연동하여 Ajax를 구현하는 과정을 매우쉽게 기술하고있어 인상깊습니다. 이곳에서 체크하십시오.

Comments

Richard McMahon씨는 Prototype을 이용한 "ResizingTextArea" 컴포넌트를 만들고 공개했다. 이 컴포넌트는 클릭(click)과 키업(keyup)이벤트를 할당하여 텍스트 영역의 Row를 감시하고 실시간으로 리사이즈 한다. 이 블로그의 댓글과 방명록 텍스트 영역에 적용해 보았다.(썩 쓸만함)

/**
 * ResizingTextArea Component
 * Richard McMahon(http://jroller.com)
 */
var ResizingTextArea = Class.create();
ResizingTextArea.prototype = {
  defaultRows: 1,
  initialize: function(field) {
    this.defaultRows = Math.max(field.rows, 1);
    this.resizeNeeded = this.resizeNeeded.bindAsEventListener(this);
    Event.observe(field, "click", this.resizeNeeded);
    Event.observe(field, "keyup", this.resizeNeeded);
  },
  resizeNeeded: function(event) {
    var t = Event.element(event);
    var lines = t.value.split('\n');
    var newRows = lines.length + 1;
    var oldRows = t.rows;
    for(var i = 0; i < lines.length; i++) {
      var line = lines[i];
      if(line.length >= t.cols) newRows += Math.floor(line.length / t.cols);
    }
    if(newRows > t.rows) t.rows = newRows;
    if(newRows < t.rows) t.rows = Math.max(this.defaultRows, newRows);
  }
}

사용법 : <textarea ... onfocus="new ResizingTextArea(this);">

Comments

자바스크립트 프레임웍인 Prototype은 1.5.0 버전의 rc_0 ~ rc_2 비공식 배포에 이어서 정식버전을 지난 19일 발표했습니다. 더불어 Scriptaculous 또한 1.7.0으로 업데이트 되었습니다. 그리고 RadRails가 1.2.1을 공식으로 발표했습니다. Prototype이나 Scriptaculous는 RadRails 프레임웍으로부터 발전한 것이며 프로젝트의 일부분이기도 합니다.

prototype_home.gif

이번 배포와 동시에 Prototype은 공식 홈페이지(prototypejs.org)를 오픈하여 API와 Tutorials 컨텐츠 서비스를 시작했으며, Scriptaculous는 Effect.Morph 메서드를 추가하고 다수의 버그를 수정했습니다.(CHANGELOG)

Comments