2012. 7. 23. 02:54

<SCRIPT type=text/javascript src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></SCRIPT>
    <SCRIPT type=text/javascript>
        $(document).ready(function () {
            $('.remaining').each(function () {
                // count 정보 및 count 정보와 관련된 textarea/input 요소를 찾아내서 변수에 저장한다.
                var $count = $('.count', this);
                var $input = $(this).prev();

                // .text()가 문자열을 반환하기에 이 문자를 숫자로 만들기 위해 1을 곱한다.
                var maximumCount = $count.text() * 1;

                // update 함수는 keyup, paste, input 이벤트에서 호출한다.
                var update = function () {
                    var before = $count.text() * 1;
                    var now = maximumCount - $input.val().length;

                    // 사용자가 입력한 값이 제한 값을 초과하는지를 검사한다.
                    if (now < 0) {
                        var str = $input.val();
                        $input.val(str.substr(0, maximumCount));
                        now = 0;
                    }

                    // 필요한 경우 DOM을 수정한다.
                    if (before != now) {
                        $count.text(now);
                    }
                };

                // input, keyup, paste 이벤트와 update 함수를 바인드한다
                $input.bind('input keyup paste', function () { setTimeout(update, 0) });

                update();
            });
        });
    </SCRIPT>
<TEXTAREA></TEXTAREA>
<DIV class=remaining>남은 글자수: <SPAN class=count>300</SPAN></DIV>

'' 카테고리의 다른 글

DISQUS 소셜 댓글 달기  (1) 2014.06.16
그누보드 게시판 테이블 그리고 댓글  (0) 2014.06.16
Trigger an Error - 오류 발생시키기  (0) 2012.05.19
jQuery Mobile 페이지 이동  (1) 2011.11.03
자바스크립트 레퍼런스  (0) 2011.11.03
Posted by 다오나무