Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

crf_h0m3r

[Resolvido] Erro no código, não sei o que significa.

Recommended Posts

Bom galera, a ideia inicial é criar um espaço em que dê para mudar o background (mudar para alguma imagem já baixada) quando for selecionado.

 

Aqui o código:

<html>
<head>
<title></title>
</head>
<body>
<script language="javascript" type="text/javascript">
function mbg(form1)
{
    for (i=0 ;i<document.form1.sbg.length ;i++ )
    {
        if (document.form1.sbg[i].selected)
        {
        form1.style.background = document.form1.sbg[i].value;
        }

    }

}

</script>
<form action="" method="get" name="form1" id="form1">
Escolha seu background:
<select onChange="mbg(form1);" name="sbg" id="sbg">
  <option value="background/flores">Flores</option>
  <option value="background/pedras">Pedras</option>
  <option value="background/universo">Universo</option>
  <option value="background/abstrato">Abstrato</option>
</select>
</form>
</body>
</html>

Porém, quando vou selecionar algum tipo de background no "List menu" o programa me retorna o erro:

Linha: 13

Caractere: 9

Erro: Argumento inválida

 

No caso, seria no começo da linha: form1.style.background = document.form1.sbg.value;

Já troquei para style.backgroundImage, style.bgColor.. e continua o mesmo erro. Em <option value> já tentei trocar o "value" por "background" e não obtive êxito.

 

Alguém pode me explicar o que significa "Argumento inválido" e como eu poderia resolver?

 

(Ainda estou iniciando, uso o Free JavaScript Editor, se alguém tiver outro melhor pra recomendar, sinta-se livre)

 

Desde já,

obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que a ideia é trocar o background da tela toda né?

Se for, você deve alterar o estilo do background do body, fiz esse script e funcionou aki:

function mbg(form1)
{
    for (i=0 ;i<document.form1.sbg.length ;i++ )
    {
        if (document.form1.sbg[i].selected)
        {
            // uma imagem de fundo em css deve ser especificada dentro da tag 'url()'
            document.body.style.background = 'url(' + document.form1.sbg[i].value + ')';
        }

    }

}
Você também deve especificar a extensão da imagem que será usada para o fundo (.jpg, .png...)

 

Para edição eu uso qualquer editor, mas sempre rodo os códigos no google chrome para debugar, acho que é o melhor jeito de encontrar erros e fazer debug.

 

flws

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.