diff --git a/public/scripts/controllers/tags-controller.js b/public/scripts/controllers/tags-controller.js index 4624744..31a9482 100644 --- a/public/scripts/controllers/tags-controller.js +++ b/public/scripts/controllers/tags-controller.js @@ -354,7 +354,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim toastr.error('该分类【' + tag + '】已存在!', "提示"); return; } - + if (tag) { ngDialog.close(dialog); @@ -497,10 +497,17 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim bookmark.tags = data.tags; bookmark.description = data.description; find = true; + if ($scope.order[bookmark.type - 1]) { + dataService.transition('#' + bookmark.id); + } } }) if (!find) { - getTags({}); + if (data.tags.map((tag) => tag.id).indexOf($scope.currentTagId) >= 0) { + if (!$scope.editMode) { + $scope.getBookmarks($scope.currentTagId, $scope.currentPage = 1); + } + } } } }); @@ -540,12 +547,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim } function transition() { - var className = 'js-tags-table'; - $('.' + className).transition('hide'); - $('.' + className).transition({ - animation: dataService.animation(), - duration: 500, - }); + dataService.transition($scope.showMode == 'item' ? '.js-tag-costomTag' : '.js-tags-table'); } function clickCmp(a, b) { diff --git a/public/scripts/services/data-service.js b/public/scripts/services/data-service.js index 62ea9cf..03f356c 100644 --- a/public/scripts/services/data-service.js +++ b/public/scripts/services/data-service.js @@ -54,6 +54,31 @@ app.factory('dataService', [function() { var t = data[parseInt(Math.random() * 1000) % data.length]; return t; }, + transition: function(selector, params) { + var data = {}; + data.animation = (params && params.animation) ? params.animation : service.animation(); + data.duration = (params && params.duration) ? params.duration : 1000; + data.onComplete = function() { + if (params) { + if (params.state == 'hide') { + $(selector).hide(); + } else if (params.state == 'show') { + $(selector).show(); + } else if (params.state == 'remove') { + $(selector).remove(); + } else { + $(selector).show(); + } + params.cb && params.cb(); // 完成之后回调! + } else { + $(selector).show(); + } + + } + $(selector).transition('hide'); // 不管怎样,先隐藏 + console.log(data); + $(selector).transition(data); //这个执行完之后一定是show + }, historyTypes: ['书签', '谷歌', 'Github', '栈溢出', '百度', '备忘录'], showStyles: ['navigate', 'costomTag', 'card', 'table'], forbidQuickKey: { diff --git a/public/views/tags.html b/public/views/tags.html index 3693f56..cca6b40 100644 --- a/public/views/tags.html +++ b/public/views/tags.html @@ -1,5 +1,5 @@