entryPageController.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /**
  2. *
  3. * @authors Your Name (you@example.org)
  4. * @date 2017-06-26 11:13:47
  5. * @version $Id$
  6. */
  7. var EntryPageController = function () {
  8. // private data
  9. var entryPageEl = $('.m-entry');
  10. // private api
  11. var initBgAnim = function (name) {
  12. var hideOtherLogo = function () {
  13. if (name !== 'maoking') {
  14. $('.logo-maoking').fadeOut(300);
  15. $('.icon-maoking').fadeOut(300);
  16. }
  17. if (name !== 'radiooo') {
  18. $('.logo-radiooo').fadeOut(300);
  19. $('.icon-radiooo').fadeOut(300);
  20. }
  21. if (name !== 'maofm') {
  22. $('.logo-maofm').fadeOut(300);
  23. $('.icon-maofm').fadeOut(300);
  24. }
  25. $('.entry-light').hide();
  26. };
  27. var showOtherLogo = function () {
  28. if (name !== 'maoking') {
  29. $('.logo-maoking').fadeIn(300);
  30. $('.icon-maoking').fadeIn(300);
  31. }
  32. if (name !== 'radiooo') {
  33. $('.logo-radiooo').fadeIn(300);
  34. $('.icon-radiooo').fadeIn(300);
  35. }
  36. if (name !== 'maofm') {
  37. $('.logo-maofm').fadeIn(300);
  38. $('.icon-maofm').fadeIn(300);
  39. }
  40. $('.entry-light').fadeIn(500);
  41. };
  42. $('.logo-' + name).hover(
  43. function () {
  44. entryPageEl.hasClass('bg-' + name) || entryPageEl.addClass('bg-' + name);
  45. hideOtherLogo();
  46. },
  47. function () {
  48. entryPageEl.hasClass('bg-' + name) && entryPageEl.removeClass('bg-' + name);
  49. showOtherLogo();
  50. }
  51. );
  52. }
  53. // public api
  54. this.pageInit = function () {
  55. if (document.documentElement.clientWidth <= 1080) {
  56. $('.entry-icon').hide();
  57. $('.entry-text').hide();
  58. } else {
  59. initBgAnim('maoking');
  60. initBgAnim('radiooo');
  61. initBgAnim('maofm');
  62. }
  63. TD.imgPreload(function () {
  64. $('.m-loading').hide();
  65. });
  66. }
  67. }
  68. $(document).ready(function () {
  69. var entryPage = new EntryPageController();
  70. entryPage.pageInit();
  71. });