Estoy creando una extensión de Google Chrome y usando JavaScript para verificar la cantidad de caracteres en el cuerpo de un sitio web. Quiero que imprima la cantidad de caracteres en el cuerpo, con la excepción de espacios, <style> s y <script> s. Sin embargo, cuando ingreso el código a continuación, aparece el error "Error de referencia no detectado: $ no está definido". Intenté eliminar la sección de filtro y aún no acepta el $ . Cuando elimino el $ y solo uso body.contents() ya no reconoce el contents() como una función, lo cual tiene sentido. Me preguntaba cuál es una buena solución para este error.
var length = $("body").contents().filter(function(){ return (this.localName != "script" && this.localName != "style") ? true : false; }).text().replace(/\s+/g, "").length; document.write(length);