我正在尝试用 jQuery 做一些事情,但动作太慢了。
我在 iOS UIWebView 中有一个嵌入(类似 pinterest 布局的)集合(纯 CSS),每个 pin 都有一个按钮,这个按钮发送对动作的爱。当用户触摸按钮时,我必须将爱(不爱)发送到服务器并刷新 UI(更精确地更改背景图像)。
问题是,由于用户按下按钮,我有将近一秒钟的延迟(在背景图像更改之前)。我将尝试使用 setTimeout 函数“模拟”辅助线程来避免这种情况。但没有按预期工作。
我尝试的是:
setTimeout(function() {
love_btn.css("background-image", "url(btn_like_black@2x.png)");
pin.find(".love").css("background-image", "url(img_like@2x.png)");
var x = parseInt(pin.find(".counter").first().text());
var u = x - 1;
pin.find(".counter").first().text(u);
}, 0);
window.location.href = "protocol://unlove/" + love_id;
最后一行是在objective-c 代码中处理的重定向,以调用注册爱(unlove)的WebService。
顺便说一句,我也尝试了服务器调用中的超时。所以,问题是:有没有办法使用 jQuery 尽快更改背景图像?setTimeout 函数真的像我想的那样工作吗?
谢谢。