2017-05-16 7 views
1

Ich verwende HttpHandler in meinem Asp.Net MVC-Projekt, das das Thumbnail-Bild erhält und in <img />-Tag lädt. Die Funktion funktioniert nach Bedarf ordnungsgemäß.Loader anzeigen, bis keine Antwort vom Server empfangen wird

Aber bevor Server Antwort geben möchte ich einige laden Symbol/Nachricht so Benutzer kann wissen, dass Bild noch geladen wird.

Mein Code:

Httphandler Code:

var currentResponse = HttpContext.Current.Response; 

string URL = "http://localhost:50417/API/GetThumbnail"; 
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL); 
        request.KeepAlive = false; 
        request.ProtocolVersion = HttpVersion.Version10; 
        request.Method = "GET"; 
        request.Timeout = 30000; 
        HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 

        StreamReader streamr = new StreamReader(response.GetResponseStream()); 


        currentResponse.Write(streamr.ReadToEnd()); 

RouteConfig.cs

routes.Add(new Route("Thumbnail/getImage", new ThumbnailImageRouteHandler())); 

index.csHtml

<img src="/Thumbnail/getImage" /> 

Antwort

1

Ich habe die jQuery-Funktion zum Laden Bild gif zu zeigen. Folgendes ist eine Funktion

$(".thumb-img img").one("load", function() { 
     // do stuff 
     $(this).removeClass("LoaderImg"); 
    }).each(function() { 
     $(this).addClass("LoaderImg"); 
     if (this.complete) $(this).load(); 
    }); 
0

Bitte verwenden Sie jQuery Ajax {beforeSend, komplett} oder andere Javas cript Bibliothek oder Framework, um Ihren Wunsch-Effekt zu implementieren. Wie bekannt ist, nur abhängig von asp.net kann nicht liefern Ihr Denken.

Einen schönen Tag noch!

Verwandte Themen