Я не уверен, что это можно сделать так, как вы пытаетесь. Браузер будет всегда ждать, пока страница полностью загрузится, поэтому он всегда будет ждать, пока вы отправите второй пакет.
Если вы не хотите использовать AJAX или jQuery, вы можете попробовать хакерскую версию, чтобы получить то, что вы хотите.
Что вы можете сделать, это указать функцию обратного вызова на вашей странице, чтобы заполнить div параметром, например,
callback = function(data) {
document.getElementById('foo').innerHTML = data;
}
Затем вы устанавливаете тайм-аут на своей странице, чтобы отправить запрос на ваш сервер для динамической загрузки файла JavaScript, который вызывает эту функцию. Итак, еще раз:
myTimeout = function() {
var script = document.createElement('script');
script.src = "http://myserver.com/mydynamicscript";
document.getElementByTagName('head').appendChild(script);
}
setTimeout(myTimeout, 2000);
Сценарий, который вы загружаете, может быть статическим или неким файлом сервлета / php, который возвращает файл javascript, т. Е. Он устанавливает заголовок типа контента на «text / javascript».
В этом сценарии вы должны сгенерировать следующее:
callback("whatever I want to put in my div...");
Как только это будет загружено, оно вызовет предыдущую функцию, которую вы объявили ранее, и загрузит содержимое в этот div.
Это по сути хакерская форма AJAX, но не AJAX.