Jump to content
Sign in to follow this  
Omar~

Bug ou tem diferença mesmo? "width()" - "innerWidth"

Recommended Posts

Primeiramente não é problema só curiosidade mesmo....

Ambas funções não deveriam retornar o mesmo resultado?

1 -

Spoiler

$(document).ready(function () {
    function larguradatela() {
        var tamanho = $(window).width();
        $('#teste-largura').text('LARGURA : ' + tamanho);
    }
    $(window).resize(function () {
        larguradatela();
    });
    larguradatela();
});

 

 

2 -

Spoiler

$(document).ready(function () {
    function larguradatela() {
        document.getElementById("teste-largura").innerHTML = "LARGURA : " + window.innerWidth;
    }
    $(window).resize(function () {
        larguradatela();
    });
    larguradatela();
});

 

 

 

Bem criei isso para pegar a largura a tela, assim podendo ter um controle melhor quando desenvolvo responsivos. (E isso é uma mão na roda)

 

Acontece o seguinte na primeira função usando a somente a jQuery tenho um resultado de resolução da página que não fica correta, tenho um retorno a menos que de fato está a resolução de tela.

Já na segunda tenho a resolução precisa.

A resolução é baseada no driver de vídeo, sendo que a segunda como disse acerta exatamente.

 

Mas então em ambos os casos não deveria ser a mesma coisa?

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Similar Content

    • By fideles
      Fala pessoal, como anda as coisas?
       
      Meu conhecimento em JS e quase neutro, conheço algo, mais talvez não o suficiente para o que eu precise, por isso venho pedir ajuda a vocês,
       
      Tenho um pequeno programinha, simples mesmo que tem 4 areas (Administração, Compras, Financeiro, Almoxarifado).
       
      Quem fica na ADM solicita algo,  compras visualiza e da um "ok" e o financeiro tbm tem que dar um "ok" e no final, o almoxarifado dá um "Processo Concluido" (está parte está ok, funcionando, sem erro)
       
      Meu problema seria que quem está no almoxarifado consegue clicar no botão "Processo Concluido" mesmo o pessoal de compras e financeiro não dando um "ok" na solicitação ou ele tbm consegue dar "Processo Concluido" se um ou outro dar um "ok". Precisaria que ele so conseguisse dar "Processo Concluido" se os dois darem o "ok", se so um dar "ok" ele não pode dar "Processo Concluido".
       
      Alguém consegue pelo menos me dar um norte para que eu possa dar continuidade? Já tentei em PHP e nada.
       
    • By Sapinn
      Tenho um form que pergunto o nome, sobrenome, email, idade e telefone de contato. Como faço para verificar se o email digitado já foi cadastrado e retorna na mesma pagina uma mensagem caso ele ja existe ou prosseguir para a area do usuario caso ele não exista sem da refresh na página.
    • By mamotinho
      Olá, gostaria de sabe como posso fazer uma contagem regressiva apartir de um registro em meu banco de dados eu tentei montar um código da seguinte forma:

       
      <? $DateGET = date('m/d/Y H:i A', strtotime($result->DateDiscount)); ?> <script> var valueDate = <?=$DateGET?>; var end = new Date(valueDate); var _second = 1000; var _minute = _second * 60; var _hour = _minute * 60; var _day = _hour * 24; var timer; function showRemaining() { var now = new Date(); var distance = end - now; if (distance < 0) { clearInterval(timer); document.getElementById("countdown").innerHTML = "EXPIRED!"; return; } var days = Math.floor(distance / _day); var hours = Math.floor((distance % _day) / _hour); var minutes = Math.floor((distance % _hour) / _minute); var seconds = Math.floor((distance % _minute) / _second); document.getElementById("countdown").innerHTML = "<span class='n_date day' id='days'>" + days + "</span><span class='date'>일</span>"; document.getElementById("countdown").innerHTML += "<span class='n_time hour' id='hrs'>" + hours + "</span>"; document.getElementById("countdown").innerHTML += "<span class='n_time minute' id='minus'>" + minutes + "</span>"; document.getElementById("countdown").innerHTML += "<span class='n_time second' id='secs'>" + seconds + "</span>"; } timer = setInterval(showRemaining, 1000); </script> Mais infelizmente não passou a data registrada no banco de dados, alguém teria ideia de como posso ta fazendo.
    • By Jack Oliveira
      Ola boa tarde pessoal
      poderia me dar uma ajuda preciso fazer um modo de revista  para um site mostrar uns parceiros
      a ideia seria igual deste site aqui
       
      Revista JS
       
      dentro dela seria para lista em grid grupar de 4 em 4 em cada página desta revista nela não terá valores nem nada apenas as imagem mesmo e o titulo
       
      se tiver uma boa solução de como fazer ou se alguém com mais pratica em js e css puder ajudar fico grato
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.