代码将图像预加载到图像对象中,然后(假设)将其设置为HTML上的图像元素src:
<!DOCTYPE html>
<html>
<head>
<script language="javascript">
window.onload = function () {
var oImage = new Image();
oImage.onload = function () {
document.getElementById('myImage').src = oImage;
alert('done');
};
oImage.src = 'image1.jpg';
}
</script>
</head>
<body>
<img id="myImage" src="" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
为什么它不起作用?
在nodeJS中,如何在继续之前同时调用异步函数并等待所有回调?
在下面的示例中,我希望main all_results仅在返回时返回f1,f2并且f3完成回调()
function main(callback){
var all_results = [];
f1(function(results){
all_results.push(result)
});
f2(function(results){
all_results.push(result)
});
f3(function(results){
all_results.push(result)
});
// when all 3 calls are complete:
callback(all_results)
}
function f1(callback){
...
callback(results);
}
function f2(callback){
...
callback(results);
}
function f3(callback){
...
callback(results);
}
Run Code Online (Sandbox Code Playgroud)
不使用承诺.
在下面的代码中,我尝试通过代理使用请求。检查我是否使用https://v4.ident.me/进行验证。
该文档没有提供示例,因此我尝试了下面的代码,但它打印的是我的实际 IP,而不是代理的:
const REQUEST = require('request'); // https://www.npmjs.com/package/request
var r_options = {
host: '<proxy ip address>', // http://www.freeproxylists.net/
port: 8080,
timeout: 30000, // 30s
headers: {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0'
},
url: 'https://v4.ident.me/'
};
REQUEST(r_options, function (error, response, body) {
console.log(body);
});
Run Code Online (Sandbox Code Playgroud)
那么,如何在npm的request包中使用proxy呢?