title: Making ads served through DFP fully responsive
body: <p>I have modified GPT (Google Publisher Tags) so it serves on size ads for phones and tablets and the other size for computer or larger screens. It works well but sizes are determined on load and when using tablet the ads stay the same regardless if you flip from landscape to portrait view. I added the code to dynamically refresh the ads on windows resize and that works as far refreshing goes, but sizes are still determined (I assume) on load and ads sizes do not change. How can I “refresh / reload” variables (size and size2) on window resize before ads are refreshed?<br>
  This is the code:</p>
  
  <pre><code>    &lt;script type='text/javascript'&gt;
      googletag.cmd.push(function() {
      var width = document.documentElement.clientWidth;
      var size;
       if (width &gt;= 320 &amp;&amp; width &lt; 728) 
       size = [320, 50]; // smartphones
      else 
        size = [728, 90]; // desktops and tablets
      var size2;
       if (width &gt;= 320 &amp;&amp; width &lt; 728) 
       size2 = [180, 150]; // smartphones
      else 
       size2 = [160, 600]; // desktops and tablets
     var slot1=googletag.defineSlot('/XXXXXXX/tp_home_topboard', size, 'div-gpt-ad-1380075538670-3').addService(googletag.pubads());
     var slot2=googletag.defineSlot('/XXXXXXX/tp_home_skyscraper', size2, 'div-gpt-ad-1380222668349-0').addService(googletag.pubads())
     googletag.pubads().enableSingleRequest();
     googletag.enableServices();
  
     $(window).resize(function(){googletag.pubads().refresh([slot1, slot2])});
     });
    &lt;/script&gt;
  </code></pre>