没有jquery的ajax请求头

时间:2013-03-25 20:03:44

标签: javascript jquery ajax

我创建了以下JavaScript函数来加载车辆的图像,或者加载备用图像(如果不可用)。问题是这个页面是1kb,同时它只需要为这一个函数加载85 + kb的整个jquery库。所以我的问题是,有没有办法在不加载jQuery库的情况下完成相同的工作?

function GetImages() {
var Query = location.search;
//If query exists
if ((Query != "") && (Query != "?")){
var chunks = Query.split("=");
//If passed the right parameter
if (chunks[0] == "?unit") {
    var Unit = chunks[1];
    for (var i=1; i<11; i++) {
        var unitimageURL = "/pics/"+Unit+"-"+i+".png";
        $.ajax({
            type: 'HEAD',
            url: unitimageURL,
            async: false,

            success: function() {
                $('.pictures').append("<img src="+unitimageURL+" width=150 height=90 alt='Unit "+Unit+" Picture "+i+"'>&nbsp;");
                if ((i == 4) || (i ==8)) {
                $('.pictures').append("<br>");
                }

            },
            error: function() {

                $('.pictures').append("<img src=nopic2.png width=150 height=90 alt='Unit "+Unit+" Picture "+i+"'>&nbsp;");
                if ((i == 4) || (i ==8)) {
                $('.pictures').append("<br>");
                }
            }
        });
    }

}
}
else {
alert("No query");
}
}

1 个答案:

答案 0 :(得分:0)

是的,有一种方法 - 好的var oRequest = new XMLHttpRequest();方式! 不要忘记设置所有需要的回调,检查响应状态,一切都会好的。 要创建HEAD请求,只需将“HEAD”指定为.open()方法的参数。

您还需要document.createElement()将结果附加到您的网页(或者您也可以使用.innerHTML属性。

此外,像http://www.tutorialspoint.com/ajax/what_is_xmlhttprequest.htm这样的文档可能很方便。