Избегать отставания, вызванного подъемом
Я хочу войти 'постучал' и выполнить HUD как можно скорее, но oauth_upload_photo заставляет его отставать (очевидно из-за подъема). Как я могу мгновенно привязать HUD??
var submit_post = function submit_post(){
console.log('tapped');
// Show HUD
plugins.navigationBar.hideRightButton();
var hud = document.getElementById("hud");
hud.style.display = 'block';
// Get the image
var image = document.getElementById('myImage');
var imageURI = image.src;
// Get the caption from the textarea
var cap = document.getElementById('tar');
var caption = cap.value;
// Call upload photo
oauth_upload_photo(imageURI,caption);
};
1 ответ
Ваша проблема (которая требует гораздо большего объяснения, прежде чем мы сможем понять, о чем вы на самом деле спрашиваете) не имеет ничего общего с подъемом переменной JavaScript. Все, что нужно сделать, - это определить переменные в верхней части функции, независимо от того, где находится их первоначальное объявление в функции. Это не меняет порядок выполнения любых операторов.
Также в некоторых браузерах console.log()
не гарантируется полная синхронность, и отображение данных в окне журнала также не обязательно происходит немедленно. Иногда происходит задержка, прежде чем он действительно регистрируется. Я не знаю, вызвано ли это маршалингом данных через границы процессов, общей логикой перерисовки или какой-либо другой внутренней проблемой реализации.
Вы также можете изменить это:
var submit_post = function submit_post(){
к этому:
var submit_post = function (){
или даже это:
function submit_post() {
так что вы не дважды определяете один и тот же символ.