Как сделать асинхронной загрузку виджета вконтакте?
Вот как используя документацию  VK мне удалось реализовать асинхронную загрузку на примере виджета для группы:<script type="text/javascript">
  window.vkAsyncInit = function() {
    VK.init({
      apiId: ID_Вашего_Приложения,
      onlyWidgets: true
    });
    VK.Widgets.Group("vk_groups", {mode: 1, no_cover: 1, width: "250"},  ID_Вашей_Группы); //указывается ID группы лишь потому что это пример
  };

  setTimeout(function() {
    var el = document.createElement("script");
    el.type = "text/javascript";
    el.src = "https://vk.com/js/api/openapi.js?156";
    el.async = true;
    document.getElementById("vk_groups").appendChild(el);
  }, 0);
</script>
<!-- VK Widget -->
<div id="vk_groups"></div>
Где:ID_Вашего_Приложения - необходимо создать приложение тут и перейдя в настройки получить тот самый ИД (без него работать асинхронно не будет)ID_Вашей_Группы - цифровой ID вашей группы лично я смотрел тут
А как насчет извращений? Делаете iframe внизу тэга body, а внутри iframe в head засунуть скрипты?