From a1b354ad2d669f0af739faaa34fbfd6408436f01 Mon Sep 17 00:00:00 2001 From: luchenqun Date: Thu, 2 Mar 2017 11:30:10 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=99=E6=89=80=E6=9C=89=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?=E5=8A=A0=E4=B8=8A=E4=BA=86=E9=AB=98=E5=A4=A7=E4=B8=8A=E7=9A=84?= =?UTF-8?q?=E5=8A=A8=E7=94=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../scripts/controllers/advice-controller.js | 20 +++++++++++ .../controllers/bookmarks-controller.js | 26 +++++++++++++-- public/scripts/controllers/home-controller.js | 16 +++++++++ .../scripts/controllers/login-controller.js | 25 +++++++++----- .../scripts/controllers/search-controller.js | 17 ++++++++++ .../controllers/settings-controller.js | 17 ++++++++++ public/scripts/controllers/tags-controller.js | 33 +++++++++++++++---- public/views/advice.html | 2 +- public/views/home.html | 2 +- public/views/login.html | 7 ++-- public/views/menus.html | 2 +- public/views/search.html | 2 +- public/views/settings.html | 2 +- public/views/tags.html | 21 ++++++------ 14 files changed, 155 insertions(+), 37 deletions(-) diff --git a/public/scripts/controllers/advice-controller.js b/public/scripts/controllers/advice-controller.js index 119c1a7..be2166e 100644 --- a/public/scripts/controllers/advice-controller.js +++ b/public/scripts/controllers/advice-controller.js @@ -35,6 +35,9 @@ app.controller('adviceCtr', ['$scope', '$state', '$timeout', 'bookmarkService', function getAdvices(params) { bookmarkService.getAdvices(params) .then((data) => { + if ($scope.advices.length == 0) { + transition(); + } $scope.advices = data; pubSubService.publish('Common.menuActive', { login: true, @@ -52,4 +55,21 @@ app.controller('adviceCtr', ['$scope', '$state', '$timeout', 'bookmarkService', getAdvices({}); }, 100) + $('.js-segment-advice').transition('hide'); + + function transition() { + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + var t = data[parseInt(Math.random() * 1000) % data.length]; + + var className = 'js-segment-advice'; + $('.' + className).transition('hide'); + $('.' + className).transition({ + animation: t, + duration: 500, + }); + } + }]); diff --git a/public/scripts/controllers/bookmarks-controller.js b/public/scripts/controllers/bookmarks-controller.js index 87452b5..cb9c910 100644 --- a/public/scripts/controllers/bookmarks-controller.js +++ b/public/scripts/controllers/bookmarks-controller.js @@ -106,7 +106,7 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' } $scope.copy = function(id, url) { - var clipboard = new Clipboard('#url'+id, { + var clipboard = new Clipboard('#url' + id, { text: function() { return url; } @@ -141,7 +141,13 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' } $scope.closeMsg = function() { - $(".js-msg").remove(); + $('.js-msg').transition({ + animation: animation(), + duration: '500ms', + onComplete: function() { + $(".js-msg").remove(); + } + }); } $scope.loadCardData = function() { @@ -198,6 +204,7 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' login: true, index: 0 }); + transition(); }) .catch((err) => console.log('getBookmarks err', err)); @@ -205,6 +212,9 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' function transition() { + if ($scope.showStyle == 'card' && $scope.currentPage > 1) { + return; + } var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' @@ -223,6 +233,18 @@ app.controller('bookmarksCtr', ['$scope', '$state', '$stateParams', '$filter', ' duration: 500, }); } + + function animation() { + + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + var t = data[parseInt(Math.random() * 1000) % data.length]; + + return t; + } + // TODO: 我要将编辑按钮固定在容器的右上角 $(window).resize(updateEditPos); updateEditPos(); diff --git a/public/scripts/controllers/home-controller.js b/public/scripts/controllers/home-controller.js index 1040953..04d84d8 100644 --- a/public/scripts/controllers/home-controller.js +++ b/public/scripts/controllers/home-controller.js @@ -16,9 +16,25 @@ app.controller('homeCtr', ['$scope', '$stateParams', '$filter', '$state', '$wind login: false, index: 0 }); + transition(); } }) .catch((err) => { console.log('autoLogin err', err) }); + + function transition() { + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + var t = data[parseInt(Math.random() * 1000) % data.length]; + + var className = 'js-segment-home'; + $('.' + className).transition('hide'); + $('.' + className).transition({ + animation: t, + duration: 500, + }); + } }]); diff --git a/public/scripts/controllers/login-controller.js b/public/scripts/controllers/login-controller.js index 7cf30cf..55a169d 100644 --- a/public/scripts/controllers/login-controller.js +++ b/public/scripts/controllers/login-controller.js @@ -16,14 +16,6 @@ app.controller('loginCtr', ['$scope', '$filter', '$state', '$cookieStore', 'book $scope.passwordRegister1 = ""; $scope.passwordRegister2 = ""; - - $scope.myKeyup = function(e) { - var keycode = window.event ? e.keyCode : e.which; - if (keycode == 13) { - $scope.login(); - } - }; - $scope.login = function() { var autoLogin = $('.ui.checkbox.js-auto-login').checkbox('is checked'); if (!$scope.username || !$scope.password) { @@ -62,7 +54,7 @@ app.controller('loginCtr', ['$scope', '$filter', '$state', '$cookieStore', 'book $scope.showRegister = function() { $('.ui.modal.js-register').modal({ closable: false, - }).modal('show'); + }).modal('setting', 'transition', transition()).modal('show'); $scope.emailRegister = ""; $scope.usernameRegister = ""; @@ -113,4 +105,19 @@ app.controller('loginCtr', ['$scope', '$filter', '$state', '$cookieStore', 'book toastr.error('注册失败:' + JSON.stringify(err), "错误"); }); } + + var className = 'js-form-login'; + $('.' + className).transition('hide'); + $('.' + className).transition({ + animation: transition(), + duration: 500, + }); + + function transition() { + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + return data[parseInt(Math.random() * 1000) % data.length]; + } }]); diff --git a/public/scripts/controllers/search-controller.js b/public/scripts/controllers/search-controller.js index df23808..849ed09 100644 --- a/public/scripts/controllers/search-controller.js +++ b/public/scripts/controllers/search-controller.js @@ -199,10 +199,27 @@ app.controller('searchCtr', ['$scope', '$state', '$stateParams', '$filter', '$wi $scope.bookmarkCount = data.totalItems; $scope.totalPages = Math.ceil($scope.bookmarkCount / perPageItems); $scope.loading = false; + transition(); }) .catch((err) => { console.log('getBookmarks err', err); $scope.loading = false; }); } + + function transition() { + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + var t = data[parseInt(Math.random() * 1000) % data.length]; + + var className = 'js-table-search'; + $('.' + className).transition('hide'); + $('.' + className).transition({ + animation: t, + duration: 500, + }); + } + }]); diff --git a/public/scripts/controllers/settings-controller.js b/public/scripts/controllers/settings-controller.js index 0c9130c..1f1a106 100644 --- a/public/scripts/controllers/settings-controller.js +++ b/public/scripts/controllers/settings-controller.js @@ -76,4 +76,21 @@ app.controller('settingsCtr', ['$scope', '$stateParams', '$filter', '$state', '$ login: true, index: 3 }); + transition(); + + function transition() { + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + var t = data[parseInt(Math.random() * 1000) % data.length]; + + var className = 'js-segment-settings'; + $('.' + className).transition('hide'); + $('.' + className).transition({ + animation: t, + duration: 500, + }); + } + }]); diff --git a/public/scripts/controllers/tags-controller.js b/public/scripts/controllers/tags-controller.js index ccadaad..72ba24d 100644 --- a/public/scripts/controllers/tags-controller.js +++ b/public/scripts/controllers/tags-controller.js @@ -15,7 +15,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim $scope.currentPage = 1; $scope.inputPage = ''; $scope.currentTagId = ($stateParams && $stateParams.tagId) || ''; - $scope.edit = false; + $scope.editMode = false; $scope.newTag = ''; $scope.waitDelTag = {}; $scope.waitDelBookmark = {}; @@ -57,6 +57,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim login: true, index: 1 }); + transition(); }) .catch((err) => { console.log('getTags err', err); @@ -74,7 +75,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim } $scope.jumpToUrl = function(url, id) { - if (!$scope.edit) { + if (!$scope.editMode) { $window.open(url, '_blank'); bookmarkService.clickBookmark({ id: id @@ -127,7 +128,7 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim } $scope.copy = function(id, url) { - var clipboard = new Clipboard('#tagurl'+id, { + var clipboard = new Clipboard('#tagurl' + id, { text: function() { return url; } @@ -145,11 +146,13 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim } $scope.toggleMode = function() { - $scope.edit = !$scope.edit; - if (!$scope.edit) { + $scope.editMode = !$scope.editMode; + if (!$scope.editMode) { getTags({}); + } else { + $('.js-tags-table').transition('hide'); } - setTimeout(updateEditPos, 100); + updateEditPos(); } $scope.editTag = function(tag) { @@ -323,7 +326,9 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim } if ($scope.currentTagId) { - $scope.getBookmarks($scope.currentTagId, $scope.currentPage); + if (!$scope.editMode) { + $scope.getBookmarks($scope.currentTagId, $scope.currentPage); + } } else { toastr.info('您还没有书签分类,请点击菜单栏的添加按钮进行添加', "提示"); } @@ -381,4 +386,18 @@ app.controller('tagsCtr', ['$scope', '$filter', '$window', '$stateParams', '$tim } } + function transition() { + var data = ['scale', 'fade', 'fade up', 'fade down', 'fade left', 'fade right', 'horizontal flip', + 'vertical flip', 'drop', 'fly left', 'fly right', 'fly up', 'fly down', 'swing left', 'swing right', 'swing up', + 'swing down', 'browse', 'browse right', 'slide down', 'slide up', 'slide left', 'slide right' + ]; + var t = data[parseInt(Math.random() * 1000) % data.length]; + + var className = 'js-tags-table'; + $('.' + className).transition('hide'); + $('.' + className).transition({ + animation: t, + duration: 500, + }); + } }]); diff --git a/public/views/advice.html b/public/views/advice.html index e5bb896..33917ff 100644 --- a/public/views/advice.html +++ b/public/views/advice.html @@ -1,4 +1,4 @@ -
+
diff --git a/public/views/home.html b/public/views/home.html index ec7937d..84c99e2 100644 --- a/public/views/home.html +++ b/public/views/home.html @@ -1,4 +1,4 @@ -
+

为什么要做个网络书签

每个浏览器上面都会有个书签可以供你收藏你以后可能还要用到的网址。但是这个书签有以下几个缺点我没法忍受(由于浏览器我只用Google Chrome,下面的观点我都是基于该浏览器):

diff --git a/public/views/login.html b/public/views/login.html index 27c3598..30476ca 100644 --- a/public/views/login.html +++ b/public/views/login.html @@ -1,4 +1,4 @@ -
+
错误提示

@@ -7,14 +7,14 @@

- +
- +
@@ -32,6 +32,7 @@
+
diff --git a/public/views/search.html b/public/views/search.html index 8d64d21..e421fb6 100644 --- a/public/views/search.html +++ b/public/views/search.html @@ -115,7 +115,7 @@
- +
diff --git a/public/views/settings.html b/public/views/settings.html index 6e89fd9..b0918d8 100644 --- a/public/views/settings.html +++ b/public/views/settings.html @@ -1,4 +1,4 @@ -
+
+
@@ -65,8 +64,8 @@
标题 - {{ bookmark.title }} - + {{ bookmark.title }} + {{ bookmark.url }}