jQuery.fn.wordCount = function(params){
var p = { counterElement:"display_count" };
var total_words;
if(params) { jQuery.extend(p, params); }

this.keypress(function()
{
var passedValue = jQuery.trim(this.value);
CountWords(passedValue);
});

function handlePaste()
{
var strInputFieldValue = $(this).val();
var strClipboardText=window.clipboardData.getData("Text");
strInputFieldValue = strInputFieldValue + strClipboardText;

CountWords(strInputFieldValue)
}

function CountWords(strValue)
{
var wordArray = strValue.split(/[\s\.\?\,]+/);
if(wordArray[wordArray.length -1] == '')
total_words=wordArray.length-1;
else
total_words=wordArray.length;

if(strValue.length == 0)
total_words = '0';

jQuery('#'+p.counterElement).html("Word Count: "+total_words);
}


$(this).bind('paste',handlePaste);

};

