I have the following implementation and it is fully functional. I need to show loading animation image first time only, my current implementation it shows loading animation all the time.
var theDataSource = new kendo.data.DataSource({
transport: {
read: function (op) {
setTimeout(function () {
op.success(data);
}, 4000);
}
},
group: {
field: "series"
},
sort: {
field: "category",
dir: "asc"
},
requestStart: function () {
kendo.ui.progress($("#loading"), true);
},
requestEnd: function () {
kendo.ui.progress($("#loading"), false);
}
});
Set time to a variable which defaults to your delay time (4000). Then check your sessionStorage variable to see if we have already run. If so set time to 0.
Save the sessionStorage variable on requestEnd and also check it before showing the loading animation:
Updated FIDDLE