define(['$', 'template'], function ($, template) { return { body: '', init: function (pageData, dtd) { var $view = this; $.newTouch('button', function (event) { event.stopPropagation(); event.preventDefault(); var buttonIndex = $(this).data('button-index'); var pushData = pageData.pushData; if (pushData.buttons && pushData.buttons[buttonIndex] && $.isFunction(pushData.buttons[buttonIndex].callback)) { pushData.buttons[buttonIndex].callback(); } $view.trigger('spa:closepanel'); }, $view); dtd.resolve(); }, beforeopen: function (pageData, dtd) { var $view = this; var pushData = pageData.pushData; var buttons = pushData.buttons ? pushData.buttons : [{text: 'ζˆ‘ηŸ₯道了', class: 'btn-primary'}]; var html = pushData.html ? pushData.html : ''; $('.spa-page-bg', $view).css({ opacity: 0 }).transition({ opacity: 0.6 }); var tpl = template('common/alert', { title: pushData.title, message: pushData.message, html: html, buttons: buttons }); $view.find('.spa-page-body').html(tpl); // $view.find('.alert-body').css({'pointer-events' : 'none'}); dtd.resolve(); }, beforeclose: function (panelData, dtd) { var $view = this; $('.spa-page-bg', $view).transition({ opacity: 0 }); setTimeout(function(){ $view.find('.alert-body').css({'pointer-events' : true}); }, 100); dtd.resolve(); } } })