Pregunta

Estoy usando jQuery DynaCloud con recuento de palabras para crear un tagcloud dinámico. Tengo términos específicos para incluir en la nube (aunque la frecuencia es diferente para cada usuario), y algunos de los términos son de varias palabras, o tiene caracteres especiales ( "y", """ '', etc.) como parte del término.

rompo los términos específicos con bloques html:

<pre><span class="tag">this isn't the last tag</span></pre>

como un ejemplo.

La forma en que funciona recuento de palabras (por lo que puedo decir) es aceptar sólo caracteres específicos y para dividir los espacios entre las palabras.

He estado tratando de editar el script para permitir que todos los caracteres (incluyendo especial), y sólo romper en el <span class=tag>.

Sin embargo, no parece que cualquier cambio que hago tienen ningún efecto.

¿Alguna idea de cómo modificar el código para tener todo entre las etiquetas y se rompen en la etiqueta?

//accept Latin-1 basic + Latin-1 extended characters
testChar: function(c) {
    return((c >=   0 && c <= 500)
        || (c >= 128 && c <= 151)
        || (c >= 160 && c <= 164)
        || (c >=  48 && c <=  57)
        || (c >= 224 && c <= 246)
        || (c >= 249 && c <= 255));
},

//split words
splitWords: function(words) {
    var w = new Array(), str = '';
    for(var i = 0, j = words.length; i < j; i++) {
        c = words.charCodeAt(i);
        if(this.testChar(c)) str += words.substring(i, i + 1);
        else {
            w.push(str);
            str = '';
        }
    }
}
¿Fue útil?

Solución

Tengo este tiempo. Había estado tratando de utilizar caracteres codificados similares a lo que el autor original de la secuencia de comandos utiliza (so c>=0 && c<=500). pero yo estaba pensando sobre el problema.

todo esto se puede hacer con chacters acaba de fricción, de modo editado con decir

<pre>
    testChar: function(c) {
        return((c >= 97 && c <= 122)
            || (c >= 128 && c <= 151)
            || (c >= 160 && c <= 164)
            || (c >= 48 && c <= 57)
            || (c >= 224 && c <= 246)
            || (c >= 249 && c <= 255)
            || (c = "'" || " " || "&"));
    },

</pre>

y ahora todos los caracteres que necesito aparecer.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top