JQuery плагин для подсчета символов - PullRequest
0 голосов
/ 22 февраля 2011

согласно коду, предоставленному Феликсом, я сделал HTML-страницу для скрипта подсчета символов.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" language="javascript" src="jquery.js"></script>
    <script type="text/javascript">
$(document).ready(function() {
    (function($) {
        $.fn.charlimit = function(options) {
            var def = {
            limit: 250,
                display: null
            };
            $.extend(def, options);
            var $display = $(def.display);

            $display.html(def.limit);

            this.bind('change keyup', function() {
                var l = $(this).val().length;
                $display.html(def.limit - l);
                if (l > def.limit) {
                    $(this).val(function(i, value) {
                        return value.substring(0, def.limit);
                    });
                    $display.html(def.limit - $(this).val().length);
                }
            });
            return this;
        };
    }(jQuery));


        //Plugin Call
        $('#message').charlimit({
            limit: 10,
            display: '#charCount'
        });
    });
</script>
</head>

<body>
    <textarea name="message" id="message" tabindex="4" rows="4" cols="35"></textarea>
    <p class="character_limit">Character limit: <span id="charCount"></span></p>
</body>
</html>

Проблема, с которой я сталкиваюсь, состоит в том, что ... когда число символов становится равным 0, и я нажимаю другую клавишу .. charcount покажет -60, и функция (i, значение) {.....} попадет внутрь текстовой области.

Пожалуйста, проверьте.

Спасибо Локеш Ядав

1 Ответ

0 голосов
/ 22 февраля 2011

Кажется, есть небольшая неточность синтаксиса с объявлением функции ... странно, что это работает, но, возможно, это нормально ...

Последняя строка объявления функции:

        };
    }(jQuery));

Но должно быть:

        };
    })(jQuery);

edit: Я не получил ошибку в Firefox, и, похоже, она работает нормально, так что это, вероятно, невиновник.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...