Olá. Não estou conseguindo conferir se o que a pessoa digitou está igual a frase. Sempre dá esse erro de que substr não é função. O que faço?
Olá. Não estou conseguindo conferir se o que a pessoa digitou está igual a frase. Sempre dá esse erro de que substr não é função. O que faço?
Oi Mirella.
As funções substr()
ou substring()
servem para pegar partes de uma string. Olhe esse exemplo:
var str = "Substring pega partes de uma string!";
var res = str.substr(3, 9);
No caso, o valor de res será: string pe
. Eu cortei a string no índice 3 (quarto caractere, contando que começa por 0) e peguei os primeiros 9 caracteres que existiam pra frente. Note que para utilizar o método, você precisa usá-lo em uma string e receber o resultado em outra.
De toda forma, esse método não é o que você procura. O que você pode usar é o operador ===
, tipo:
if ($("#meuId").html() === "Mirella")
{
...
}
Eu estava tentando reproduzir o que ensinou na aula 5 sobre substr. Eu entendi o que é, só não estou conseguindo fazer funcionar.
function inicializaMarcadores(){
var frase = $(".frase").text;
campo.on("input", function(){
var digitado = campo.val();
var comparavel = frase.substr(0, digitado.length);
if (digitado == comparavel){
campo.addClass("borda-verde");
campo.removeClass("borda-vermelha");
}else{
campo.addClass("borda-vermelha");
campo.removeClass("borda-verde");
}
});
}
Fiz tudo conforme fala na aula, mas como não estava funcinando, fui ver pelo console e aparece "frase.substr is not a function"
Ah sim, desculpe.
Altere esse trecho:
var frase = $(".frase").text;
Para isso:
var frase = $(".frase").text();
Se não funcionar, substitua o text()
para html()
.