2
respostas

Diferenças no código da função removeLinha

Oi pessoal, uma dúvida sobre algumas formas de implementar a função removeLinha deste vídeo.

Opção 1 - funciona

function removeLinha() {

    event.preventDefault();
    var linha = $(this).parent().parent();
    linha.fadeOut(1000, function(){

        linha.remove();

    });

}

Opção 2 - funciona também

function removeLinha() {

    event.preventDefault();
    var linha = $(this).parent().parent();
    linha.fadeOut(1000, this.remove);

}

Opção 3 - não funciona

function removeLinha() {

    event.preventDefault();
    var linha = $(this).parent().parent();
    linha.fadeOut(1000, linha.remove);

}

Eu gostaria de saber porque a opção 3 não funciona?

2 respostas

Qual o erro que dá no terceiro? Pergunto pq vc ta passando uma referência para a função remove do objeto referenciado por linha. Na segunda vc faz a mesma coisa, mas passa um remove relacionado ao this, que deve ser o elemento que ta com o click ligado a função.

O console não acusa erro, mas na terceira opção que eu passei a linha não é removida do html, ela só fica com o display:none

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software