Ir para conteúdo
AlexandreHenrique

Alterar valor de atributo data-*

Recommended Posts

Olá 

tenho uma função JS para mudar valor de atributos de uma imagem.

A imagem é essa:

<img src="capa.jpg"  data-desc="2018 - Aventura" alt="titulo do filme" onclick="teste(this,2);" id="video" />

 A função:

function teste(arg,p){
	var pos = p;
	document.getElementById('video').src="novacapa.jpg"; // muda src
	document.getElementById('video').alt="Titulo do novo video"; //  muda alt 
    document.getElementById('video').attr('data-desc', 'valor a atribuir'); // ???
}

A função muda o "src" e "alt" mas não consigo mudar o valor do atributo 'data-desc", como faço isso?

Essa é a linha em questão: 

document.getElementById('video').attr('data-desc', 'valor a atribuir'); 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola tudo bem ?

Bem, vamos la.

element.attr(): É de uso exclusivo do jQuery, pelo que vi você esta usando apenas javascript puro.

A maneira certa de fazer isso seria usando element.setAttribute. Ficando assim:

 

document.getElementById('video').setAttribute("data-desc", "valor a atribuir"); 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ILR master
      Fala pessoal.
      Tudo bem?
       
      Tenho o seguinte código que funcionda perfeitamente:
       
      date_default_timezone_set("America/Sao_Paulo");
      $d_inicio= date('Y-m-d');
      $d_final= date('Y-m-d', strtotime('+30  day'));
       
      Mas eu quero definir a quantidade de dias pegando o valor que a variável:
       
      date_default_timezone_set("America/Sao_Paulo");
      $tempo = 30;
      $d_inicio= date('Y-m-d');
      $d_final= date('Y-m-d', strtotime('+$tempo  day'));
       
      Mas quando declaro com variável não funciona.
      Obrigado pela ajuda.
    • Por ILR master
      Fala galera, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
    • Por ericklluz
      Boa tarde senhores, sou iniciante no Js e estou com uma dúvida, estou tentando resolver uma questão num CRM onde temos um campo de data, isto é, um input com uma data específica e eu gostaria de criar um script que recebe este input e retorna o primeiro dia deste mês e coloca em outro campo.
       
      Alguém poderia me dar uma ajuda pra que entenda como construír este pequeno script. serei eternamente grato.
       
      Obrigado comunidade!
    • Por Kefatif
      Prezados, boa tarde.
       
      Preciso criar um select que me traga do banco os registros que se repetem vazios nos últimos 3 meses nos campos:
      campo_a
      campo_b
       
      vazios (null).
       
      Podem me ajudar?
    • Por Roberto S. Santos
      Boa noite devs.
      Poderiam me ajudar ?
      Estou querendo fazer o seguinte em um formulário PHP...
      O usuário deve cadastrar a sua data e horário do uso na churrasqueira e quando chegar nesta data e no horário final ele apaga os dados do cadastro desta reserva.
      Como posso fazer isto com PHP ?
      Temos...
      data reserva
      hora reserva  (hora inicial)
      hora final (já vai estar pré definida na base de dados)
      Banco de Dados : clientes
      Tabela : reserva
      Deus abençoe a todos.
       
×

Informação importante

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