alert.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. define(['$', 'template','product'], function ($, template,product) {
  2. return {
  3. body: '',
  4. init: function (pageData, dtd) {
  5. var $view = this;
  6. var $doc = $(document);
  7. $.newTouch('button', function (event) {
  8. // console.log($(this).html());
  9. if($(this).html()==="查看"){
  10. event.preventDefault();
  11. $doc.trigger('spa:navigate', {
  12. hash: 'myCoupon',
  13. pushData: {
  14. needReload: true
  15. }
  16. });
  17. }
  18. event.stopPropagation();
  19. event.preventDefault();
  20. var buttonIndex = $(this).data('button-index');
  21. var pushData = pageData.pushData;
  22. if (pushData.buttons && pushData.buttons[buttonIndex] && $.isFunction(pushData.buttons[buttonIndex].callback)) {
  23. pushData.buttons[buttonIndex].callback();
  24. }
  25. $view.trigger('spa:closepanel');
  26. }, $view);
  27. $.newTouch('.newTouch')
  28. dtd.resolve();
  29. },
  30. beforeopen: function (pageData, dtd) {
  31. var $view = this;
  32. var pushData = pageData.pushData;
  33. var buttons = pushData.buttons ? pushData.buttons : [{text: '我知道了', class: 'btn-primary'}];
  34. var html = pushData.html ? pushData.html : '';
  35. $('.spa-page-bg', $view).css({
  36. opacity: 0
  37. }).transition({
  38. opacity: 0.6
  39. });
  40. var tpl = template('common/alert', {
  41. title: pushData.title,
  42. message: pushData.message,
  43. html: html,
  44. buttons: buttons
  45. });
  46. $view.find('.spa-page-body').html(tpl);
  47. // $view.find('.alert-body').css({'pointer-events' : 'none'});
  48. dtd.resolve();
  49. },
  50. beforeclose: function (panelData, dtd) {
  51. var $view = this;
  52. $('.spa-page-bg', $view).transition({
  53. opacity: 0
  54. });
  55. setTimeout(function(){
  56. $view.find('.alert-body').css({'pointer-events' : true});
  57. }, 100);
  58. dtd.resolve();
  59. }
  60. }
  61. })