欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品

主頁 > 知識庫 > ajax異步加載圖片實例分析

ajax異步加載圖片實例分析

熱門標簽:硅語電話機器人公司 ai機器人電銷資源 超級大富翁地圖標注 騰訊地圖標注位置能用多久 地圖標注項目怎么樣 個人怎樣在百度地圖標注地名 云呼外撥網絡電話系統 機器人電銷騙局揭秘 越南河內地圖標注

本文實例講述了ajax異步加載圖片的方法。分享給大家供大家參考,具體如下:

圖片一般比較大,所以他們都是在基本網頁加載后才逐漸加載上的,整個加載的過程非常不雅觀,或者是從模糊逐漸變清晰,或者是從上往下拓展開(當然你也可以認為這些都是不錯的特效)。如果是通過定時更換img的src屬性來實現圖片的動態更換,由此帶來的閃爍更讓它難以接受,這可不是用alt屬性就能讓人愉快的。

聯系時下比較熱門的,號稱“無”刷新的AJAX技術,利用XMLHttpRequest對象發起異步請求,待圖像加載完畢再動態插入到“前臺”的HTML頁面上。應該可以滿足需求,不過XMLHttpRequest對象返回的對象只有兩個屬性responseXML和responseText,前者是XML對象,后者是返回的純文本內容,似乎沒有圖片所需要的二進制數據...退一步,即使能用responseText取回圖片的二進制數據,我們又如何能夠將它插入到前臺頁面呢?將img的src屬性換成請求的url?

說干就干,寫個圖像幻燈片的代碼來驗證自己的想法:

html>
    head>
        title>Image Slide/title>
        script>
function makeAsyncRequest(url, callback)
{
    var httpRequest;
    if (window.XMLHttpRequest) { // Mozilla, Safari, ...
        httpRequest = new XMLHttpRequest();
        if (httpRequest.overrideMimeType) {
            httpRequest.overrideMimeType('text/xml');
        }
    } else if (window.ActiveXObject) { // IE
        try {
            httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
            }
        }
    }
    httpRequest.onreadystatechange = function () {
        if (httpRequest.readyState == 4
                 httpRequest.status == 200)
            callback(url);
    };
    httpRequest.open('GET', url, true);
    httpRequest.send('');
}
var i = 0;
var max_i = 10;
function displayImage()
{
    var url = "./" + i + ".jpg";
    makeAsyncRequest(url, function (url) {
        var div = document.getElementById("image");
        var img = div.getElementsByTagName("img");
        if (img.length == 0) {
            img = document.createElement("img");
            while (div.childNodes.length > 0)
                div.removeChild(div.childNodes[0]);
            div.appendChild(img);
        } else
            img = img.item(0);
        img.src = url;
        if (i == max_i)
            i = 0;
        else
            i ++;
        window.setTimeout("displayImage();", 1000);
    });
}
        /script>
    /head>
    body onload="displayImage();">
        div id="image">
        /div>
    /body>
/html>

以上代碼以1000毫秒為時間間隔循環顯示圖片0.jpg - 10.jpg,效果比較明顯,確實消除了閃爍。那么它的原理呢?每張圖片的顯示都分為兩個步驟:
用XMLHttpRequest對象從服務器獲取圖像,緩存圖像到本地的瀏覽器緩沖區。
從本地的瀏覽器緩沖區取得圖像進行顯示。
因為在第二步從取圖片到顯示的時間很短,所以用戶基本上覺察不出任何閃爍。可見,以上技術基于所請求的圖像是可緩存的的假設,如果圖像是不可緩存的,是不是以上代碼就不能正常工作了呢?

還是讓代碼來說話,把以上代碼做些更改:

function displayImage()
{
 var url = "./" + i + ".jpg";
 var url = "./image.php?filename=" + i + ".jpg";
    makeAsyncRequest(url, function (url) {
        var div = document.getElementById("image");
        var img = div.getElementsByTagName("img");

再寫一個php腳本用來傳送所請求的圖片:

?php
    header("Content-Type: image/jpeg");
    header("Cache-Control: no-cache");
    echo file_get_contents($_GET["filename"]);
?>

果真不出所料,又出現了閃爍...

看來還需要另想辦法,閉門造車是行不通了,求助google這位百事通先生吧!功夫不負有心人,終于還是被我找到了,欣喜歸欣喜,結果還是讓我大跌眼鏡,img竟然有onload的事件回調接口,只能慶幸自己的眼鏡是樹脂的了,"眼鏡掉了我不怕不怕啦,不怕不怕不怕啦..."

還等啥,當然是代碼伺候了:

html>
    head>
        title>Image Slide/title>
        script>
var i = 0;
var max_i = 10;
function displayImage()
{
    var img = document.createElement("img");
    img.onload = function () {
        var div = document.getElementById("image");
        while (div.childNodes.length > 0)
            div.removeChild(div.childNodes[0]);
        div.appendChild(img);
        if (i == max_i)
            i = 0;
        else
            i ++;
        window.setTimeout("displayImage();", 1000);
    }
    img.src = "./" + i + ".jpg";
}
        /script>
    /head>
    body onload="displayImage();">
        div id="image">
        /div>
    /body>
/html>

"She is an ungly girl!"沒啥好說的,不可緩存的圖像的情況:

        i ++;
        window.setTimeout("displayImage();", 1000);
    }
 img.src = "./" + i + ".jpg";
 img.src = "./image.php?filename=" + i + ".jpg";
 }
    /script>
/head>

讀到這里,你應該知道哪個是歪門邪道,哪個是人間正道了吧?

更多關于Ajax相關內容感興趣的讀者可查看本站專題:《jquery中Ajax用法總結》、《JavaScript中ajax操作技巧總結》及《PHP+ajax技巧與應用小結》。

希望本文所述對大家ajax程序設計有所幫助。

您可能感興趣的文章:
  • 使用加載圖片解決在Ajax數據加載中頁面出現短暫空白的問題(推薦)
  • JQuery實現Ajax加載圖片的方法
  • jQuery 瀑布流 絕對定位布局(二)(延遲AJAX加載圖片)
  • jQuery 瀑布流 浮動布局(一)(延遲AJAX加載圖片)
  • 代碼實例ajax實現點擊加載更多數據圖片

標簽:舟山 鄭州 洛陽 海南 遼源 邢臺 內蒙古 林芝

巨人網絡通訊聲明:本文標題《ajax異步加載圖片實例分析》,本文關鍵詞  ajax,異步,加載,圖片,實例分析,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ajax異步加載圖片實例分析》相關的同類信息!
  • 本頁收集關于ajax異步加載圖片實例分析的相關信息資訊供網民參考!
  • 推薦文章
    欧美阿v视频在线大全_亚洲欧美中文日韩V在线观看_www性欧美日韩欧美91_亚洲欧美日韩久久精品
  • <rt id="w000q"><acronym id="w000q"></acronym></rt>
  • <abbr id="w000q"></abbr>
    <rt id="w000q"></rt>
    成人久久视频在线观看| 欧美日韩午夜视频| 成人精品一二三区| 精品1区2区3区| 中文字幕一区在线观看视频| 另类小说色综合网站| 久久性爱视频网站| 成人爱爱电影网址| 国产91丝袜美女在线播放| 91精品国产乱| 亚洲成人777| 成人综合婷婷国产精品久久蜜臀| 正在播放国产对白害羞| 精品国产乱码久久久久久1区2区 | av无码一区二区三区| 欧美写真视频网站| 亚洲免费观看高清| 不卡的av电影在线观看| 东京热无码av男人的天堂| 欧美一区二区三区在线观看视频| 亚洲国产日韩精品| 折磨小男生性器羞耻的故事| 在线精品视频小说1| 亚洲视频在线一区观看| 国产成人精品网址| 日韩一区二区三区四区在线| 国产精品全国免费观看高清 | 成人av网址在线观看| 西西444www无码大胆| 日韩精品一区二区三区视频在线观看| 日韩精品亚洲一区| 国产视频久久久久久| 欧美一区二区在线观看| 日韩激情av在线| 免费a在线观看播放| 欧美日韩视频专区在线播放| 亚洲一区视频在线观看视频| 中文在线字幕观看| 7777精品久久久大香线蕉| 亚洲1区2区3区视频| www.88av| 337p日本欧洲亚洲大胆色噜噜| 韩国一区二区三区| 成人无码精品1区2区3区免费看| 国产亚洲一区字幕| 成人午夜伦理影院| 在线观看日韩电影| 亚洲电影在线免费观看| 亚洲国产精品成人综合久久久| 日韩精品一区二区三区老鸭窝 | 国产成人免费xxxxxxxx| 日韩欧美综合视频| 亚洲狼人国产精品| 国产一级免费片| 欧美精品一区二区三区很污很色的| 久久99热99| 男的操女的网站| 欧美综合亚洲图片综合区| 亚洲国产精品精华液网站| 巨胸大乳www视频免费观看| 久久久国产精品麻豆| 六月丁香婷婷久久| tube国产麻豆| 亚洲va欧美va人人爽午夜| 欧美图片一区二区| 国产精品每日更新在线播放网址 | 日韩精品自拍偷拍| 国产精选一区二区三区| 91精彩视频在线观看| 三级一区在线视频先锋 | 中文字幕无码人妻少妇免费| 久久影院视频免费| 99在线热播精品免费| 91精品国产综合久久精品app| 国产一区二区三区四区五区入口| 2021亚洲天堂| 免费日本视频一区| 欧美老熟妇一区二区三区| 亚洲一二三区不卡| 91激情视频在线观看| 亚洲免费观看视频| 亚洲久久久久久久| 亚洲美女少妇撒尿| 国产免费一区二区三区网站免费| 亚洲欧美一区二区三区极速播放| av网站免费在线播放| 国产精品成人免费精品自在线观看| 污污免费在线观看| 欧美国产精品一区| xxxx黄色片| 国产精品毛片无遮挡高清| 亚洲熟女一区二区| 中文字幕一区二区在线观看| 国产精品九九视频| 亚洲欧洲av在线| 男人的天堂av网| 亚洲成av人**亚洲成av**| 日本裸体美女视频| 婷婷开心激情综合| 青草影院在线观看| 国内精品免费在线观看| 欧美在线免费观看亚洲| 国产麻豆视频一区| 69久久夜色精品国产69蝌蚪网| 国产91精品一区二区麻豆亚洲| 在线综合视频播放| 亚洲成人av免费观看| 国产精品网站在线观看| 在线观看免费视频黄| 中文字幕一区不卡| 亚洲第一黄色网址| 亚洲一区二区三区小说| 少妇aaaaa| 国产伦精品一区二区三区免费| 欧美一卡2卡三卡4卡5免费| 99国产精品国产精品毛片| 久久久久久久久伊人| 香港三级日本三级| 亚洲午夜在线视频| 色天使久久综合网天天| 国产成人在线网站| www激情久久| 色8久久精品久久久久久蜜| 日本精品一二三| 久久这里只有精品首页| 黄色污在线观看| 亚洲综合男人的天堂| 在线一区二区三区| 97久久超碰国产精品| 中文字幕一区二区视频| 国产3级在线观看| 国产伦精品一区二区三区视频青涩| 亚洲精品一线二线三线无人区| 超碰97人人干| 久久国产精品露脸对白| 久久午夜色播影院免费高清| 国产福利短视频| 久久99精品国产麻豆不卡| wwww国产精品欧美| 黄色片在线观看免费| 国产一区二区不卡老阿姨| 国产婷婷色一区二区三区| 午夜精品久久久久99蜜桃最新版| 国产高清精品在线| 国产精品嫩草99a| 国产一区二区播放| 国产人妻精品久久久久野外| 亚洲最新视频在线观看| 这里只有精品99re| 国产女主播喷水高潮网红在线| 国内精品嫩模私拍在线| 欧美国产激情一区二区三区蜜月| 国产av无码专区亚洲av毛网站| 91同城在线观看| 丝瓜av网站精品一区二区| 精品成人一区二区三区四区| 天堂а√在线中文在线鲁大师| 99这里只有精品| 无码av免费一区二区三区试看| 日韩手机在线导航| 992在线观看| 91在线精品一区二区三区| 性久久久久久久久久久久| 精品精品国产高清一毛片一天堂| 老司机深夜福利网站| 99re在线视频这里只有精品| 亚洲成人动漫在线观看| 精品处破学生在线二十三| 成人免费毛片东京热| 亚洲一区二区三区四区av| 精品一区二区免费在线观看| 亚洲视频 欧洲视频| 欧美一级欧美一级在线播放| 97在线观看免费视频| 成人精品视频一区二区三区尤物| 中文在线一区二区| 欧美三级电影一区| 草草地址线路①屁屁影院成人| 丁香亚洲综合激情啪啪综合| 亚洲精品老司机| 欧美电视剧在线看免费| 色天使久久综合网天天| 荫蒂被男人添免费视频| 国产在线视频精品一区| 一区二区三区日韩欧美精品| 欧美一级生活片| 国产精品成人69xxx免费视频| 99国产精品久久久久| 九九视频精品免费| 日韩毛片在线免费观看| 51精品国自产在线| 国产午夜手机精彩视频| 久久久久久无码精品人妻一区二区| 日日夜夜一区二区| 亚洲视频在线一区观看| 日韩欧美国产精品| 在线免费观看亚洲视频| www.四虎精品| 国产精品综合视频| 亚洲一二三区视频在线观看|