라벨이 프로토타입인 게시물 표시

prototype.js invoke 사용시 user-defined 함수 호출방법[2]

이전 글에 이어서 하나더.... Element 배열에서 invoke 호출시에는 이전글처럼 String을 확장한다고해서 동작하지 않는다. Element 객체는 addMethods라는 놈이 있어서 이걸 사용하면된다. [code js] Element.addMethods(       updateOdd : function(element){             if( 어쩌고 저쩌고 ) {                   element.update('저쩌고 어쩌고');             }       } ); [/code] prototype utility method 를 확장할려고 해봤으나 잠깐 좌절하고 퇴근하였다. (회사망이 내부망이라 기억나는대로 블로깅하기때문에 오타가 있을수 있습니다)

prototype.js invoke 사용시 user-defined 함수 호출방법

실력 형편없어 4시간정도 삽질을 했다. [code js] function addSharp(s){       return '#'+s; } var color = ['00FF00','FFFFAA','AADDEE']; var rs = color.invoke('addSharp').join(','); [/code] 동작하지 않을것이다. 기본적으로 prototype api에도 substring이나 toUpperString 같은 함수만 예제로 나와있다. 직접 정의해서 해보면 급하게 실망하고 구글링하다 여기 들어오셨을 분들이 많을것같다.(-.-ㅋ 별문제없이 해결하시는 고수분도 있으시겠지만....) [code js] Object.extend(String.prototype, {       addSharp : function(el){             return '#'+this;       } } ); [/code] addSharp함수를 위와 같이 정의 해주면 된다. (보시는분중에 인자로 받은 el은 어떻게 되느냐? 하시는 분이 있을텐데, 아무값도 넘어오지 않는다. 저기도 삽질 포인트이다. prototype.js를 열어봤으나 아직하수라 정확히 이해 못했으므로 패스) 위 구문은 아래와 같이 해도 잘 동작한다. ( 혹자는 위 구문이 더 객체지향적이라한다. 하지만 아래구문도 직관적이라 별 차이 없는것 같다.) [code js] String.prototype.addSharp = function(e){       return '#'+this.; } [/code]  

Prototype.js 이용한 table 꾸미기

이미 알만한 분들은 다 안다는 prototype이다. 이미 prototype을 이용한 라이브러리들이 많은데 정리차원에서 간단한 예제하나 올려본다. [code html] <html>  <head>   <script src="prototype-1.6.0.3.js"></script>   <style>    .f1{     border: 1px solid;    }    . odd {     background-color: #EEE;    }   </style>  </head>  <body>   <table class="f1">    <tr>     <td>hello</td>     <td>hi</td>    </tr>    <tr>     <td>hellor2</td>     <td>hir22</td>    </tr>    <tr>     <td>hello</td>     <td>hi</td>    </tr>    <tr>     <td>hello</td>     <td>hi</td>    </tr>   </table>  </body...