homepageController.js 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656
  1. /**
  2. *
  3. * @authors Your Name (you@example.org)
  4. * @date 2017-06-28 11:39:08
  5. * @version $Id$
  6. */
  7. var HomepageController = function () {
  8. // private data
  9. var imgList = $('.banner-item');
  10. var lastImg = $('.banner-inner').find('.current');
  11. var indicatorWrap = $('.banner-indicator-wrap');
  12. var indicatorList = $('.banner-indicator');
  13. var lastIndicator = $('.banner-indicator-wrap').find('.current');
  14. var index = 0;
  15. var marginLeftBegin = 0;
  16. // private api
  17. var carouselCompoInit = function (itemWrap, indicatorWrap, itemForm, indicatorForm, callback) {
  18. var itemList = itemWrap.children('li');
  19. var indicatorList = indicatorWrap.children('li');
  20. var lastItem = itemWrap.find('.current');
  21. var lastIndicator = indicatorWrap.find('.current');
  22. var index = 0;
  23. var getIndex = function (target, list) {
  24. for (i = 0; i < list.length; i++) {
  25. if (target === list[i]) {
  26. index = i;
  27. };
  28. };
  29. return index;
  30. };
  31. index = getIndex(lastItem, itemList);
  32. indicatorWrap.on('click',function (evt) {
  33. var evt = evt || window.event;
  34. var target = evt.target || evt.srcElement;
  35. function getNode(node) {
  36. if (node.nodeName.toLowerCase() === 'li') {
  37. return node;
  38. } else if ($(node.parentNode) === $(this)) {
  39. return 0;
  40. } else {
  41. return getNode(node.parentNode);
  42. }
  43. }
  44. var node = getNode(target);
  45. if (node) {
  46. // 排除二级菜单
  47. if ($(node).parent().hasClass('preview-thumb-sub')) {
  48. console.log('subthumb');
  49. return;
  50. }
  51. lastIndicator.hasClass('current') && lastIndicator.removeClass('current');
  52. $(node).hasClass('current') || $(node).addClass('current');
  53. index = getIndex(node, indicatorList);
  54. lastIndicator = $(node);
  55. // item animation select
  56. var itemFormApply = function () {
  57. var imgWidth = itemWrap.width();
  58. if (itemForm === 'slide') {
  59. }
  60. if (itemForm === 'crossSlide') {
  61. if (itemWrap.find('.preview-item>img').css('animation-name') === 'item-rightcome') {
  62. itemWrap.find('.preview-item>img').css('animation-name', 'item-leftcome');
  63. itemWrap.find('.current>img').css('animation-name', 'item-rightgo');
  64. } else {
  65. itemWrap.find('.preview-item>img').css('animation-name', 'item-rightcome');
  66. itemWrap.find('.current>img').css('animation-name', 'item-leftgo');
  67. }
  68. }
  69. };
  70. // indicator animation select
  71. var indicatorFormApply = function () {
  72. var indicatorHeight = itemWrap.height() * 0.136;
  73. if (indicatorForm === 'slide') {
  74. indicatorWrap.animate({
  75. top: (3 - index) * indicatorHeight
  76. }, 600, function () {
  77. });
  78. } else if (indicatorForm === 'fade') {
  79. } else if (indicatorForm === 'horizonSlide') {
  80. var mbPreviewThumbWrapWidth = $('.mb-preview-thumb-fixed').width();
  81. console.log(mbPreviewThumbWrapWidth)
  82. console.log(index, ((index - 7) * 33.3) + '%');
  83. indicatorWrap.animate({
  84. marginLeft: -index * mbPreviewThumbWrapWidth/3 + 'px'
  85. }, 600, function () {
  86. });
  87. marginLeftBegin = parseInt($('.mb-preview-thumb-wrap').css('margin-left').match(/\d+/)[0]);
  88. };
  89. }
  90. itemFormApply();
  91. indicatorFormApply();
  92. callback && callback(node);
  93. lastItem.hasClass('current') && lastItem.removeClass('current');
  94. $(itemList[index]).hasClass('current') || $(itemList[index]).addClass('current');
  95. lastItem = $(itemList[index]);
  96. }
  97. });
  98. }
  99. var previewSubItemHandler = function (seriesIndex, index) {
  100. // 清除上一个产品定位
  101. $('.preview-inner').find('.current').removeClass('current');
  102. $('.preview-inner').find('.sub-current').removeClass('sub-current');
  103. // 定位当前产品
  104. var currentItem = $('.preview-item:nth-child(' + (seriesIndex+1) + ')')
  105. var subcurrentItem = currentItem.find('.preview-item-subitem:nth-child(' + (index+1) + ')');
  106. // 置为展示
  107. currentItem.addClass('current');
  108. subcurrentItem.addClass('sub-current');
  109. // 灯光效果
  110. var lightEl = currentItem.find('.preview-light-layer');
  111. lightEl.css('opacity', 0);
  112. lightEl.hasClass('light-effect') && lightEl.removeClass('light-effect');
  113. setTimeout(function() {
  114. lightEl.hasClass('light-effect') || lightEl.addClass('light-effect');
  115. }, 300);
  116. }
  117. var previewSubThumbHandler = function () {
  118. // 初始化选择第一类第一个为当前展示
  119. var firstItemEl = $('.preview-item:nth-child(1)');
  120. var firstThumbEl = $('.preview-thumb:nth-child(1)');
  121. firstItemEl.addClass('current');
  122. firstItemEl.find('.preview-item-subitem:nth-child(1)').addClass('sub-current');
  123. firstThumbEl.addClass('current');
  124. firstThumbEl.find('.preview-thumb-subitem:nth-child(1)').addClass('sub-current');
  125. $('.preview-thumb-sub').css('marginTop', '0');
  126. // 切换二级产品
  127. $('.preview-thumb-subitem').on('click', function () {
  128. var thumbWrapEL = $('.preview-thumb-wrap');
  129. // 清除上一个定位
  130. thumbWrapEL.find('.current').removeClass('current');
  131. thumbWrapEL.find('.sub-current').removeClass('sub-current');
  132. // 当前定位
  133. $(this).parent().parent().addClass('current');
  134. $(this).addClass('sub-current');
  135. // 获取当前定位索引
  136. var seriesIndex = thumbWrapEL.find('.current').index();
  137. var index = $(this).parent().find('.sub-current').index();
  138. console.log(thumbWrapEL.find('.current'))
  139. console.log(seriesIndex, index);
  140. var thumbHeight = $('.preview-thumb-sub-fixed').height() * 0.136;
  141. $(this).parent().animate({
  142. marginTop: (0 - index) * thumbHeight
  143. }, 300, function () {
  144. })
  145. previewSubItemHandler(seriesIndex, index);
  146. })
  147. }
  148. var previewSubThumbHandler2 = function () {
  149. // 初始化选择第一类第一个为当前展示
  150. var firstItemEl = $('.preview-item:nth-child(1)');
  151. var firstThumbEl = $('.preview-thumb:nth-child(1)');
  152. firstItemEl.addClass('current');
  153. // firstItemEl.find('.preview-item-subitem:nth-child(1)').addClass('sub-current');
  154. firstThumbEl.addClass('current');
  155. // firstThumbEl.find('.preview-thumb-subitem:nth-child(1)').addClass('sub-current');
  156. // $('.preview-thumb-sub').css('marginTop', '0');
  157. // 切换二级产品
  158. $('.preview-thumb').on('click', function () {
  159. var thumbWrapEL = $('.preview-thumb-wrap');
  160. // 清除上一个定位
  161. thumbWrapEL.find('.current').removeClass('current');
  162. // thumbWrapEL.find('.sub-current').removeClass('sub-current');
  163. // 当前定位
  164. $(this).parent().parent().addClass('current');
  165. // $(this).addClass('sub-current');
  166. // 获取当前定位索引
  167. var seriesIndex = thumbWrapEL.find('.current').index();
  168. // var index = $(this).parent().find('.sub-current').index();
  169. console.log(thumbWrapEL.find('.current'))
  170. console.log(seriesIndex);
  171. var thumbHeight = $('.preview-thumb-sub-fixed').height() * 0.136;
  172. // $(this).parent().animate({
  173. // marginTop: (0 - index) * thumbHeight
  174. // }, 300, function () {
  175. // })
  176. // previewSubItemHandler(seriesIndex, index);
  177. })
  178. }
  179. // 移动端ro产品选择处理
  180. var mobilePreviewSubHandler = function () {
  181. // 应对ip6以下的位置错乱
  182. // var topDis = $('.banner-item').height();
  183. // $('.mb-preview-thumb-fixed').css('top',topDis);
  184. // 暂时隐藏banner
  185. // $('.banner-wrap').hide();
  186. // $.fn.fullpage.destroy('all');
  187. // 应对ip6以下的位置错乱
  188. // var topDis = $(window).height() || $('.banner-wrap').height() || 'calc(100% - 375px)';
  189. // $('.mb-preview-thumb-fixed').css('top',topDis);
  190. // init
  191. $('.mb-preview-thumb-wrap').find('.current').removeClass('current');
  192. $('.mb-preview-thumb-wrap').find('.mb-preview-thumb').eq(0).addClass('current');
  193. $('.preview-inner').find('.preview-item').eq(0).addClass('current');
  194. $('.preview-inner').find('.current').find('.preview-item-subitem').eq(0).addClass('sub-current');
  195. $('.mb-preview-thumb').on('click', function (evt) {
  196. // 指示器定位
  197. $(this).parent().find('.current').removeClass('current');
  198. $(this).addClass('current');
  199. var seriesIndex = $(this).parent().find('.current').index();
  200. var mbPreviewThumbWrapWidth = $('.mb-preview-thumb-fixed').width();
  201. $(this).parent().animate({
  202. marginLeft: (-seriesIndex * mbPreviewThumbWrapWidth/3) + 'px'
  203. }, 600, function () {
  204. });
  205. marginLeftBegin = parseInt($('.mb-preview-thumb-wrap').css('margin-left').match(/\d+/)[0]);
  206. // 产品定位
  207. var currentItem = $('.preview-item:nth-child(' + (seriesIndex+1) + ')');
  208. $('.preview-inner').find('.current').removeClass('current');
  209. $('.preview-inner').find('.sub-current').removeClass('sub-current');
  210. currentItem.addClass('current');
  211. currentItem.find('.preview-item-subitem').eq(0).addClass('sub-current');
  212. //左右进出切换
  213. // var itemWrap = $('.preview-inner');
  214. // if (itemWrap.find('.preview-item-subitem>img').eq(0).css('animation-name') === 'item-rightcome') {
  215. // itemWrap.find('.preview-item-subitem>img').css('animation-name', 'item-leftcome');
  216. // itemWrap.find('.sub-current>img').css('animation-name', 'item-rightgo');
  217. // } else {
  218. // itemWrap.find('.preview-item-subitem>img').css('animation-name', 'item-rightcome');
  219. // itemWrap.find('.sub-current>img').css('animation-name', 'item-leftgo');
  220. // }
  221. // 灯光效果
  222. var lightEl = currentItem.find('.preview-light-layer');
  223. lightEl.css('opacity', 0);
  224. lightEl.hasClass('light-effect') && lightEl.removeClass('light-effect');
  225. setTimeout(function() {
  226. lightEl.hasClass('light-effect') || lightEl.addClass('light-effect');
  227. }, 300);
  228. })
  229. // 移动端二级切换
  230. var subItemChangeHandler = function () {
  231. var subItemEl = $('.preview-item-subitem');
  232. var subItemChange = function (direction) {
  233. var currentEl = $('.preview-inner').find('.current').find('.sub-current');
  234. var currentIndex = currentEl.index();
  235. var subItemNumber = currentEl.parent().children().length;
  236. // 只有一个子元素不需要继续执行
  237. if (subItemNumber === 1) {
  238. return;
  239. }
  240. var nextIndex;
  241. if (direction === 'last') {
  242. nextIndex = currentIndex - 1;
  243. } else if (direction === 'next') {
  244. nextIndex = currentIndex + 1;
  245. } else {
  246. return;
  247. }
  248. if (nextIndex < 0) {
  249. nextIndex = subItemNumber - 1;
  250. } else if (nextIndex > subItemNumber - 1) {
  251. nextIndex = 0;
  252. }
  253. if (nextIndex === currentIndex) {
  254. return;
  255. } else {
  256. console.log(nextIndex)
  257. currentEl.removeClass('sub-current');
  258. currentEl.parent().find('.preview-item-subitem').eq(nextIndex).addClass('sub-current');
  259. // 切换动画方向
  260. // if (direction === 'last') {
  261. // $('.preview-item img').css('animationName', 'item-rightgo');
  262. // $('.preview-item-sub>sub-current>img').css('animationName', 'item-leftcome');
  263. // $('.preview-item img').css('webkitAnimationName', 'item-rightgo');
  264. // $('.preview-item-sub>sub-current img').css('webkitAnimationName', 'item-leftcome');
  265. // } else if (direction === 'next') {
  266. // $('.preview-item img').css('animationName', 'item-leftgo');
  267. // $('.preview-item-sub>sub-current>img').css('animationName', 'item-rightcome');
  268. // $('.preview-item img').css('webkitAnimationName', 'item-leftgo');
  269. // $('.preview-item-sub>sub-current img').css('webkitAnimationName', 'item-rightcome');
  270. // }
  271. }
  272. }
  273. subItemEl.on('touchstart', function (evt) {
  274. var evt = evt || window.evt;
  275. //evt.preventDefault();
  276. var startPointX = evt.touches[0].clientX;
  277. var startPointY = evt.touches[0].clientY;
  278. var moveX, moveY, endPointX, endPointY;
  279. var isMoving = false;
  280. var touchmoveEventHandler = function (evt) {
  281. var evt = evt || window.evt;
  282. evt.preventDefault();
  283. if (isMoving) {
  284. return;
  285. }
  286. cliX = evt.touches[0].clientX;
  287. cliY = evt.touches[0].clientY;
  288. var moveDistance = cliX - startPointX;
  289. // console.log(moveDistance);
  290. if (moveDistance > 100) {
  291. isMoving = true;
  292. subItemEl.off('touchmove', touchmoveEventHandler);
  293. subItemChange('last');
  294. } else if (moveDistance < -100) {
  295. isMoving = true;
  296. subItemEl.off('touchmove', touchmoveEventHandler);
  297. subItemChange('next');
  298. } else {
  299. return;
  300. }
  301. }
  302. subItemEl.on('touchmove', touchmoveEventHandler);
  303. subItemEl.on('touchend', function (evt) {
  304. var evt = evt || window.evt;
  305. //evt.preventDefault();
  306. subItemEl.on('touchmove', touchmoveEventHandler);
  307. })
  308. })
  309. }
  310. subItemChangeHandler();
  311. }
  312. // 视频层处理
  313. var videoLayerHandler = function () {
  314. var videoObj = document.getElementById('videoObj');
  315. $('.video-tv').on('click', function () {
  316. var videoSrc = $(this).data('video');
  317. if (!videoSrc) {
  318. console.log('视频不存在');
  319. alert('视频不存在');
  320. return;
  321. }
  322. videoObj.src = videoSrc;
  323. setTimeout(function () {
  324. if (videoObj.networkState !== 3) {
  325. $('.video-layer').show();
  326. videoObj.play();
  327. } else {
  328. console.log('视频不存在');
  329. alert('视频不存在');
  330. }
  331. }, 0)
  332. })
  333. $('.video-layer').on('click', function (evt) {
  334. var evt = evt || window.event;
  335. var target = evt.target || evt.srcElement;
  336. if (target.nodeName.toLowerCase() === 'video') {
  337. if (videoObj.paused === true) {
  338. videoObj.play();
  339. } else {
  340. videoObj.pause();
  341. }
  342. } else {
  343. videoObj.pause();
  344. videoObj.currentTime = 0;
  345. $(this).hide();
  346. }
  347. })
  348. }
  349. // mobile touchmove handler
  350. var mobileTouchmoveHandler = function () {
  351. var mbPreviewThumbWrapEl = $('.mb-preview-thumb-wrap');
  352. var touchStartX = 0;
  353. var touchStartY = 0;
  354. var disX = 0;
  355. // var marginLeftBegin = mbPreviewThumbWrapEl.css('margin-left');
  356. var translateX = marginLeftBegin;
  357. var number = mbPreviewThumbWrapEl.children().length;
  358. var index = 0;
  359. var mbPreviewThumbWrapWidth = mbPreviewThumbWrapEl.width();
  360. // var maxMarginLeft = mbPreviewThumbWrapWidth*index/number;
  361. // var minMarginLeft = -mbPreviewThumbWrapWidth*(number-index-1)/number;
  362. var maxMarginLeft = 0;
  363. var minMarginLeft = -mbPreviewThumbWrapWidth*(number-1)/number;
  364. var mbPreviewThumbReset = function () {
  365. var mbPreviewThumbWrapEl = $('.mb-preview-thumb-wrap');
  366. // mbPreviewThumbWrapEl.css('margin-left', '0px');
  367. // mbPreviewThumbWrapEl.css('margin-left', marginLeftBegin);
  368. mbPreviewThumbWrapEl.css('transform', 'translateX(0px)');
  369. mbPreviewThumbWrapEl.css('-webkit-transform', 'translateX(0px)');
  370. disX = 0;
  371. translateX = marginLeftBegin;
  372. }
  373. // var mbPreventDefault = function (evt) {
  374. // evt.preventDefault();
  375. // }
  376. mbPreviewThumbWrapEl.on('touchstart', function (evt) {
  377. touchStartX = evt.touches[0].clientX;
  378. touchStartY = evt.touches[0].clientY;
  379. // $(document).on('touchmove', mbPreventDefault);
  380. });
  381. mbPreviewThumbWrapEl.on('touchmove', function (evt) {
  382. // evt.stopPropagation();
  383. evt.preventDefault();
  384. disX = Math.ceil(evt.touches[0].clientX - touchStartX);
  385. //console.log(disX);
  386. if (disX > maxMarginLeft - translateX) {
  387. console.log('max', maxMarginLeft - translateX)
  388. disX = maxMarginLeft - translateX;
  389. } else if (disX < minMarginLeft - translateX) {
  390. console.log('min', minMarginLeft - translateX)
  391. disX = minMarginLeft - translateX;
  392. }
  393. if (disX < -30) {
  394. mbPreviewThumbWrapEl.css('transform', 'translateX(' + disX + 'px)');
  395. mbPreviewThumbWrapEl.css('-webkit-transform', 'translateX(' + disX + 'px)');
  396. return;
  397. }
  398. if (disX > 30) {
  399. mbPreviewThumbWrapEl.css('transform', 'translateX(' + disX + 'px)');
  400. mbPreviewThumbWrapEl.css('-webkit-transform', 'translateX(' + disX + 'px)');
  401. return;
  402. }
  403. disX = 0;
  404. });
  405. mbPreviewThumbWrapEl.on('touchend', function (evt) {
  406. // translateX = evt.changedTouches[0].clientX - touchStartX + translateX;
  407. if (disX === 0) return;
  408. console.log(translateX,disX,marginLeftBegin);
  409. translateX += disX;
  410. disX = 0;
  411. console.log(translateX,disX,marginLeftBegin);
  412. // if (translateX > mbPreviewThumbWrapWidth*index/7) {
  413. // translateX = mbPreviewThumbWrapWidth*index/7;
  414. // } else if (translateX < -mbPreviewThumbWrapWidth*(6-index)/7) {
  415. // translateX = -mbPreviewThumbWrapWidth*(6-index)/7;
  416. // }
  417. mbPreviewThumbWrapEl.css('margin-left', translateX + 'px');
  418. mbPreviewThumbWrapEl.css('transform', 'translateX(0px)');
  419. mbPreviewThumbWrapEl.css('-webkit-transform', 'translateX(0px)');
  420. });
  421. // $('.mb-preview-thumb').on('click', function () {
  422. // mbPreviewThumbReset();
  423. // index = $(this).index();
  424. // console.log(index);
  425. // maxMarginLeft = mbPreviewThumbWrapWidth*index/number;
  426. // minMarginLeft = -mbPreviewThumbWrapWidth*(number-index-1)/number;
  427. // })
  428. // $(document).off('touchmove', mbPreventDefault);
  429. }
  430. // public api
  431. this.defaultInit = function () {
  432. var inv = null;
  433. var browserType = TD.util.browserType();
  434. console.log(browserType);
  435. if (browserType !== 'Chrome' && browserType !=='Safari') {
  436. console.log('not webkit');
  437. $('.effect-layer').hide();
  438. }
  439. if ($('.nav-lang-current').find('.nav-lang-item').text() === '繁体') {
  440. $('.preview-item-name').css('font-family', '"LiSong Pro", "MingLiU", "Microsoft YaHei"');
  441. $('.preview-item-name').css('font-weight', '800');
  442. };
  443. $('.m-homepage').fullpage({
  444. slidesNavigation: true,
  445. slidesPosition: 'bottom',
  446. easingcss3: 'cubic-bezier(.62,.01,0,1)',
  447. scrollOverflow: true,
  448. normalScrollElements: '.preview-thumb-wrap',
  449. afterRender: function () {
  450. inv = setInterval(function () {
  451. $('.fp-next').click();
  452. }, 3000);
  453. $('.video-wrap').length && videoLayerHandler();
  454. },
  455. afterSlideLoad: function () {
  456. clearInterval(inv);
  457. inv = setInterval(function () {
  458. $('.fp-next').click();
  459. }, 3000);
  460. }
  461. });
  462. }
  463. this.preload = function () {
  464. TD.imgPreload(function () {
  465. $('.m-header').css('opacity', 1);
  466. $('.m-homepage').css('opacity', 1);
  467. $('.m-loading').fadeOut(300);
  468. })
  469. }
  470. this.mkPageInit = function () {
  471. carouselCompoInit($('.preview-inner'), $('.preview-thumb-wrap'), 'crossSlide', 'fade', function (target){
  472. $('.preview-light-layer').css('opacity', 0);
  473. $('.preview-light-layer').hasClass('light-effect') && $('.preview-light-layer').removeClass('light-effect');
  474. setTimeout(function() {
  475. $('.preview-light-layer').hasClass('light-effect') || $('.preview-light-layer').addClass('light-effect');
  476. }, 300);
  477. });
  478. }
  479. this.mkPageMobileInit = function () {
  480. // init
  481. // 暂时隐藏banner
  482. // $('.banner-wrap').hide();
  483. // $.fn.fullpage.destroy('all');
  484. // $('.banner-item:nth-child(2)').hide();
  485. // $('.fp-slidesNav').hide();
  486. // $.fn.fullpage.reBuild();
  487. $('.preview-inner').find('.current').removeClass('current');
  488. $('.mb-preview-thumb-wrap').find('.mb-preview-thumb').eq(0).addClass('current');
  489. $('.preview-inner').find('.preview-item').eq(0).addClass('current');
  490. carouselCompoInit($('.preview-inner'), $('.mb-preview-thumb-wrap'), 'crossSlide', 'horizonSlide'), function () {
  491. }
  492. mobileTouchmoveHandler();
  493. }
  494. this.roPageInit = function () {
  495. // $('.preview-thumb-wrap').hover(function () {
  496. // $('.preview-thumb-wrap').css('paddingLeft', '1.6rem');
  497. // $('.preview-thumb-sub-fixed').css('right', '1.8rem');
  498. // }, function () {
  499. // $('.preview-thumb-wrap').css('paddingLeft', '0');
  500. // $('.preview-thumb-sub-fixed').css('right', '-1.6rem');
  501. // })
  502. // previewSubThumbHandler2();
  503. $('.preview-inner').find('.preview-item').eq(0).addClass('current');
  504. $('.preview-thumb-wrap').find('.preview-thumb').eq(0).addClass('current');
  505. carouselCompoInit($('.preview-inner'), $('.preview-thumb-wrap'), 'crossSlide', 'fade', function (target){
  506. $('.preview-light-layer').css('opacity', 0);
  507. $('.preview-light-layer').hasClass('light-effect') && $('.preview-light-layer').removeClass('light-effect');
  508. setTimeout(function() {
  509. $('.preview-light-layer').hasClass('light-effect') || $('.preview-light-layer').addClass('light-effect');
  510. }, 300);
  511. });
  512. }
  513. this.roPageMobileInit = function () {
  514. mobilePreviewSubHandler();
  515. mobileTouchmoveHandler();
  516. }
  517. }