Loading.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. var OURBABYLON = OURBABYLON || {};
  2. (function () {
  3. OURBABYLON.Loading = function (container, loadingMessage) {
  4. //Be careful while using document.body as container, if you do not specify a 'overflow-x: hidden' it will pop a horizontal scrollbar.
  5. container = container || document.body;
  6. this._loadingBack = document.createElement("div");//loadingBackDiv;
  7. this._loadingBack.id = "loadingBack";
  8. this._loadingText = document.createElement("div");//loadingTextDiv;
  9. this._loadingText.id = "loadingText";
  10. this.hide();
  11. container.appendChild(this._loadingBack);
  12. container.appendChild(this._loadingText);
  13. this._loadingMessage = loadingMessage || "Loading, please wait ...";
  14. };
  15. OURBABYLON.Loading.prototype.show = function () {
  16. this._loadingBack.className = "";
  17. this._loadingText.className = "";
  18. this._loadingText.innerHTML = this._loadingMessage;
  19. };
  20. OURBABYLON.Loading.prototype.hide = function () {
  21. this._loadingBack.className = "loadingBack";
  22. this._loadingText.className = "loadingText";
  23. };
  24. OURBABYLON.Loading.prototype.changeMessage = function (newMessage) {
  25. this._loadingText.innerHTML = newMessage;
  26. };
  27. OURBABYLON.Loading.prototype.onProgress = function (evt) {
  28. if (evt.lengthComputable) {
  29. this.changeMessage("Loading, please wait..." + (evt.loaded * 100 / evt.total).toFixed() + "%");
  30. } else {
  31. dlCount = evt.loaded / (1024 * 1024);
  32. this.changeMessage("Loading, please wait..." + Math.floor(dlCount * 100.0) / 100.0 + " MB already loaded.");
  33. }
  34. };
  35. })();