Сделать вызов Ajax после загрузки страницы
Как сделать ajax-вызов после загрузки страницы.
Мне нужно сделать ajax-вызов, предположительно, после того, как документ 10sec загрузился.
function loadajax(){
$.ajax({
url:'test',
data:"username=test",
type:"post",
success:function(){
//do action
}
});
}
$('document').load(function(){
setTimeout(function(){
loadajax();
},10000);
});
Я делаю это таким образом. Но не удалось.
Ответы
Ответ 1
Так много ответов, все немного разные, но самый короткий рекомендованный синтаксис для запуска функции через 10 секунд после готовности DOM, сохраняя при этом наилучшие практики:
$(function(){
setTimeout(loadajax,10000);
});
Как упоминает Blazemonger ниже, вы можете просто положить setTimeout(loadajax,10000);
в конец документа, однако это не так гибко, чтобы измениться. Код загрузки jQuery DOM всегда должен находиться в событии загрузки jQuery DOM (т.е. $(function(){...});
)
Ответ 2
1000 в миллисекундах - десять секунд будут 10000. Кроме того, вы ищете $(document).ready
:
$(document).ready(function(){
setTimeout(function(){
loadajax();
},10000); // milliseconds
});
http://api.jquery.com/ready
Ответ 3
Попробуй так:
$(function(){
loadajax();
});
Ответ 4
Вы можете попробовать следующее:
$(document).bind("load", function() {
//code
});
Ответ 5
С помощью Vanilla JavaScript вы можете сделать это:
document.onreadystatechange = function(){
if (document.readyState === "complete") {
myFunction();
}
else {
window.onload = function () {
myFunction();
};
};
}