TwitterではURLは22文字としてカウントをしています。そのようなTwitter独自ルールに基づいた文字数カウントをJavascriptで行うにはtwitter-text-jsを使います。
https://github.com/twitter/twitter-text-js
twitter-text.jsを読み込んだ状態で以下のようにします。
<textarea onkeyup="updateCount(value, 'count',140)" name="tweet" id="tweet"></textarea> <span id="count">0</span> <script type="text/javascript"> //<![CDATA[ updateCount= function(str, id, max){ var obj = document.getElementById(id); if(str) { obj.innerHTML = twttr.txt.getTweetLength(str); } else { obj.innerHTML = max; } }; //]]> </script>