diff --git a/package.json b/package.json index 785cfb8..3cb2e8e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "selectmenu", - "version": "1.0.0", + "version": "2.0.0", "description": "Simple, easily and diversity menu solution", "main": "selectmenu.js", "scripts": { diff --git a/selectmenu.css b/selectmenu.css index 3616274..b0a7853 100644 --- a/selectmenu.css +++ b/selectmenu.css @@ -1,5 +1,8 @@ @charset "utf-8"; +/** + * Target item style, when menu opened + */ .sm_target_clicked { background-color: #e9ecef; background-image: none; @@ -7,6 +10,70 @@ box-shadow: inset 0 0.15em 0.3em rgba(27,31,35,0.15); } +.sm_caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 10px; + /*vertical-align: middle;*/ + border-left: 4px dashed; + border-left: 4px solid \9; + border-top: 4px solid transparent; + border-bottom: 4px solid transparent; + float: right; + margin-top: 3px; +} + +/* Sub menus */ +.sm_sub_menu { + display: none; +} +.sm_sub_header { + margin-top: 2px !important; +} +.sm_sub_header:hover { + background-color: transparent !important; + color: black !important; + cursor: default !important; +} +.sm_sub_header p { + padding: 0; + margin: 0; + font-weight: 600; + line-height: 26px; + font-size: 16px; +} +.sm_sub_header button { + float: left; + font-weight: 700; + line-height: 1; + color: #000; + filter: alpha(opacity=20); + + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: 0 0; + border: 0; + + -webkit-transition: all .5s cubic-bezier(.175,.885,.32,1); + transition: all .5s cubic-bezier(.175,.885,.32,1); + height: 26px; + width: 30px; + text-shadow: none; + outline: none !important; + margin: 0; + opacity: 0.5; + font-size: 14px !important; +} +.sm_sub_header button:hover { + opacity: 1; +} +.sm_sub_header button i { + font-size: 16px; +} + + /** * Container */ @@ -31,7 +98,7 @@ } .sm_container.sm_regular { width: auto; - min-width: unset; + min-width: 150px; } .sm_container.sm_embed { position: relative; @@ -79,21 +146,10 @@ } .sm_input { display: block; - border-radius: 2px; - border: 1px solid #dddddd; - box-shadow: inset 0 1px 1px rgba(0,0,0,.075); background-color: white; - /* border-radius: 4px 0 0 4px; */ - /* border: 1px solid #79b; */ - /* - box-shadow: 1px 1px 1px rgba(0,0,0,0.2) inset; - -moz-box-shadow: 1px 1px 1px rgba(0,0,0,0.2) inset; - -webkit-box-shadow: 1px 1px 1px rgba(0,0,0,0.2) inset; - */ - margin: 0px !important; + margin: 0 !important; width: 100%; - - + font-size: 14px; line-height: 20px; min-height: 20px; @@ -103,12 +159,23 @@ outline: none !important; height: 30px; + + border-radius: 2px; + border: 1px solid #dddddd; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); + -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075); + + -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s; + -moz-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s; } .sm_input:focus { - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); - -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); - border: 1px solid #75B9F0; + border: 1px solid #bbbbbb; + /* 同时设置了内部和外部的阴影 */ + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 1px 8px rgba(90,90,90,0.35); + -moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 1px 8px rgba(90,90,90,0.35); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 1px 8px rgba(90,90,90,0.35); } @@ -172,6 +239,13 @@ div.sm_clear_btn:hover { position: relative; width: 100%; overflow-y: auto; + overflow-x: hidden; + clear: both; +} +.sm_result_area:before, +.sm_result_area:after{ + display: table; + content: " "; } .sm_result_area.sm_list_mode{ border-top: 1px solid #E6E7E7; @@ -232,6 +306,11 @@ div.sm_result_area.shadowUp{ .sm_arrow { border-width: 11px; } +.sm_arrow:after { + content: ""; + border-width: 10px; +} + .sm_arrow_bottom > .sm_arrow { top: -11px; left: 50%; @@ -240,21 +319,32 @@ div.sm_result_area.shadowUp{ border-bottom-color: #999; border-bottom-color: rgba(0,0,0,.25); } - -.sm_arrow:after { - content: ""; - border-width: 10px; -} .sm_arrow_bottom > .sm_arrow:after { + content: " "; top: 1px; margin-left: -10px; - content: " "; border-top-width: 0; border-bottom-color: #fff; + } .sm_arrow_bottom > .sm_arrow.sm_have_title:after { border-bottom-color: #f6f6f6; } +.sm_arrow_top > .sm_arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #999; + border-top-color: rgba(0,0,0,.25); +} +.sm_arrow_top > .sm_arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #fff; +} /* menu arrow */ @@ -303,7 +393,6 @@ div.sm_result_area.shadowUp{ } /* regular menu item style */ - .sm_results > li { height: auto; line-height: 1; @@ -619,7 +708,7 @@ div.sm_navi > p { /** - * 分页条样式(基于Bootstrap2的样式进行调整) + * pagination bar */ div.sm_result_area div.pagination { margin: 0px; @@ -692,12 +781,13 @@ div.sm_result_area div.pagination>ul>li.pageInfoBox>a:hover { cursor: default; } +/* icons */ @font-face {font-family: "iconfont"; - src: url('data:image/eot;base64,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'); /* IE9*/ - src: url('data:image/eot;base64,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') format('embedded-opentype'), /* IE6-IE8 */ - url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'), - url('data:image/ttf;base64,AAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW7kk5AAABfAAAAFZjbWFwntbaFQAAAewAAAHIZ2x5Zu7DHQ8AAAPEAAADtGhlYWQO9HJDAAAA4AAAADZoaGVhB94DhwAAALwAAAAkaG10eBfpAAAAAAHUAAAAGGxvY2EDfgIuAAADtAAAAA5tYXhwARUAYgAAARgAAAAgbmFtZT5U/n0AAAd4AAACbXBvc3TiBOh7AAAJ6AAAAFkAAQAAA4D/gABcBAAAAAAABAAAAQAAAAAAAAAAAAAAAAAAAAYAAQAAAAEAAIvla+NfDzz1AAsEAAAAAADV6pcjAAAAANXqlyMAAP+/BAADQQAAAAgAAgAAAAAAAAABAAAABgBWAAUAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQP8AZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHjnSwOA/4AAXAOAAIAAAAABAAAAAAAABAAAAAPpAAAEAAAABAAAAAQAAAAEAAAAAAAABQAAAAMAAAAsAAAABAAAAXwAAQAAAAAAdgADAAEAAAAsAAMACgAAAXwABABKAAAADAAIAAIABAB45mPnIucu50v//wAAAHjmY+ci5y7nS///AAAAAAAAAAAAAAABAAwADAAMAAwADAAAAAEAAgADAAQABQAAAQYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAATAAAAAAAAAAFAAAAeAAAAHgAAAABAADmYwAA5mMAAAACAADnIgAA5yIAAAADAADnLgAA5y4AAAAEAADnSwAA50sAAAAFAAAAAAB2ANIBLgFcAdoAAAAFAAD/4QO8AxgAEwAoADEARABQAAABBisBIg4CHQEhJzQuAisBFSEFFRcUDgMnIychByMiLgM9ARciBhQWMjY0JhcGBwYPAQ4BHgEzITI2Jy4CJwE1ND4COwEyFh0BARkbGlMSJRwSA5ABChgnHoX+SgKiARUfIxwPPi3+SSw/FDIgEwh3DBISGRISjAgGBQUIAgIEDw4BbRcWCQUJCgb+pAUPGhW8HykCHwEMGScaTFkNIBsSYYg0bh0lFwkBAYCAARMbIA6nPxEaEREaEXwaFhMSGQcQDQgYGg0jJBQBd+QLGBMMHSbjAAAAAAUAAP/fA8MDHwARAB4AKwAsADUAAAUhIi4BNjcBPgEyFhcBHgEOAQEGBwEGFhchPgEnASYDIiY1ETQ2MhYVERQGByM+ATIWFAYiJgNR/V4iNBsDEAFUES81LxEBVRADGzT+jRIR/qwQFCICoiIUEP6rEBIOEhIcEhIOMAEbKBsbKBshGi46HgJhHiEhHv2fHjouGgMAAR39nh0iAQEiHQJiHf4iEg4BIA4SEg7+4A4ScBQbGykbGwADAAD/3wOgAyAAFwAnADcAAAEmIg8BJy4BBhQfARYfARYyPwE2NwE2JhMhLgEnET4BNyEeARcRDgEBIgYVERQWMyEyNjURNCYjAtcKGQrqZwoZFAl/AwQDBgwGBAMEAQAKAWD9gCk2AQE2KQKAKTYBATb9Vw4SEg4CgA4SEg4B9wkJ7GoJARMaCoICAgMCAgMBAwEECRr98wE2KQKAKTYBATYp/YApNgL/Eg79gA4SEg4CgA4SAAAAAQAAAAADgwJfABcAAAEmBgcBJyYiBhQXBRYfARYyPwE2NwE2NAN4ChoJ/lXpChoTCgEBAwQDBgwGBAMEAcEJAlYJAQr+OuYJFBkK/QMBAwIDAgIDAd8KGQAAAAAFAAD/vwPBA0EADAAZAC8AOQBVAAAlIiY1ETQ2MhYVERQGIyImNRE0NjIWFREUBgEjNS4BJyEOAQcVIyIGFBYzITI2NCYlNDYzITIWHQEhASEuAScRNDYyFhURFBYzITI2NRE+ATIWFREOAQJgDhISHBISzg4SEhwSEgHyoAE2KP6/KTYBoA4SEg4DQA4SEv2SEg4BQQ0S/oABoP5AKTYBExsSEw0BwA4SARIbEgE2gBIOAWAOEhIO/qAOEhIOAWAOEhIO/qAOEgIgQCk2AQE2KUASHBISHBJADhISDkD9IAE2KQHgDhISDv4gDhISDgHfDhISDv4hKTYAAAAAABIA3gABAAAAAAAAABUAAAABAAAAAAABAAgAFQABAAAAAAACAAcAHQABAAAAAAADAAgAJAABAAAAAAAEAAgALAABAAAAAAAFAAsANAABAAAAAAAGAAgAPwABAAAAAAAKACsARwABAAAAAAALABMAcgADAAEECQAAACoAhQADAAEECQABABAArwADAAEECQACAA4AvwADAAEECQADABAAzQADAAEECQAEABAA3QADAAEECQAFABYA7QADAAEECQAGABABAwADAAEECQAKAFYBEwADAAEECQALACYBaQpDcmVhdGVkIGJ5IGljb25mb250Cmljb25mb250UmVndWxhcmljb25mb250aWNvbmZvbnRWZXJzaW9uIDEuMGljb25mb250R2VuZXJhdGVkIGJ5IHN2ZzJ0dGYgZnJvbSBGb250ZWxsbyBwcm9qZWN0Lmh0dHA6Ly9mb250ZWxsby5jb20ACgBDAHIAZQBhAHQAZQBkACAAYgB5ACAAaQBjAG8AbgBmAG8AbgB0AAoAaQBjAG8AbgBmAG8AbgB0AFIAZQBnAHUAbABhAHIAaQBjAG8AbgBmAG8AbgB0AGkAYwBvAG4AZgBvAG4AdABWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbgBmAG8AbgB0AEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAAACAAAAAAAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYBAgEDAQQBBQEGAQcAAXgEd2FybhFmYW5neGluZ3h1YW56aG9uZwZ4dWFuemUHc2hhbmNodQAAAAAA') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/ - url('data:image/svg;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPCEtLQoyMDEzLTktMzA6IENyZWF0ZWQuCi0tPgo8c3ZnPgo8bWV0YWRhdGE+CkNyZWF0ZWQgYnkgaWNvbmZvbnQKPC9tZXRhZGF0YT4KPGRlZnM+Cgo8Zm9udCBpZD0iaWNvbmZvbnQiIGhvcml6LWFkdi14PSIxMDI0IiA+CiAgPGZvbnQtZmFjZQogICAgZm9udC1mYW1pbHk9Imljb25mb250IgogICAgZm9udC13ZWlnaHQ9IjUwMCIKICAgIGZvbnQtc3RyZXRjaD0ibm9ybWFsIgogICAgdW5pdHMtcGVyLWVtPSIxMDI0IgogICAgYXNjZW50PSI4OTYiCiAgICBkZXNjZW50PSItMTI4IgogIC8+CiAgICA8bWlzc2luZy1nbHlwaCAvPgogICAgCiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ieCIgdW5pY29kZT0ieCIgaG9yaXotYWR2LXg9IjEwMDEiCmQ9Ik0yODEgNTQzcS0yNyAtMSAtNTMgLTFoLTgzcS0xOCAwIC0zNi41IC02dC0zMi41IC0xOC41dC0yMyAtMzJ0LTkgLTQ1LjV2LTc2aDkxMnY0MXEwIDE2IC0wLjUgMzB0LTAuNSAxOHEwIDEzIC01IDI5dC0xNyAyOS41dC0zMS41IDIyLjV0LTQ5LjUgOWgtMTMzdi05N2gtNDM4djk3ek05NTUgMzEwdi01MnEwIC0yMyAwLjUgLTUydDAuNSAtNTh0LTEwLjUgLTQ3LjV0LTI2IC0zMHQtMzMgLTE2dC0zMS41IC00LjVxLTE0IC0xIC0yOS41IC0wLjUKdC0yOS41IDAuNWgtMzJsLTQ1IDEyOGgtNDM5bC00NCAtMTI4aC0yOWgtMzRxLTIwIDAgLTQ1IDFxLTI1IDAgLTQxIDkuNXQtMjUuNSAyM3QtMTMuNSAyOS41dC00IDMwdjE2N2g5MTF6TTE2MyAyNDdxLTEyIDAgLTIxIC04LjV0LTkgLTIxLjV0OSAtMjEuNXQyMSAtOC41cTEzIDAgMjIgOC41dDkgMjEuNXQtOSAyMS41dC0yMiA4LjV6TTMxNiAxMjNxLTggLTI2IC0xNCAtNDhxLTUgLTE5IC0xMC41IC0zN3QtNy41IC0yNXQtMyAtMTV0MSAtMTQuNQp0OS41IC0xMC41dDIxLjUgLTRoMzdoNjdoODFoODBoNjRoMzZxMjMgMCAzNCAxMnQyIDM4cS01IDEzIC05LjUgMzAuNXQtOS41IDM0LjVxLTUgMTkgLTExIDM5aC0zNjh6TTMzNiA0OTh2MjI4cTAgMTEgMi41IDIzdDEwIDIxLjV0MjAuNSAxNS41dDM0IDZoMTg4cTMxIDAgNTEuNSAtMTQuNXQyMC41IC01Mi41di0yMjdoLTMyN3oiIC8+CiAgICAKCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ3YXJuIiB1bmljb2RlPSImIzU4OTc5OyIgZD0iTTg0OS4xMi0zMi43MDQgMTc0Ljg4LTMyLjcwNGMtNDUuMjE2IDAtODEuNTM2IDE3LjcyOC05OS42OCA0OC42NC0xOC4xNDQgMzAuOTEyLTE1LjkzNiA3MS4yOTYgNi4wOCAxMTAuNzUyTDQyMS40NzIgNzM2LjM1MmMyMi4xNDQgMzkuNzQ0IDU1LjA3MiA2Mi41MjggOTAuMzA0IDYyLjUyOHM2OC4xMjgtMjIuNzUyIDkwLjMzNi02Mi40NjRsMzQwLjU0NC02MDkuNzkyYzIyLjAxNi0zOS40NTYgMjQuMjg4LTc5LjgwOCA2LjExMi0xMTAuNzJDOTMwLjY1Ni0xNS4wMDggODk0LjMwNC0zMi43MDQgODQ5LjEyLTMyLjcwNHpNNTExLjgwOCA3MzQuODhjLTExLjIgMC0yNC4wMzItMTEuMTA0LTM0LjQzMi0yOS42OTZMMTM3LjE4NCA5NS40NTZjLTEwLjY1Ni0xOS4xMzYtMTMuMTUyLTM2LjMyLTYuNzg0LTQ3LjE2OCA2LjM2OC0xMC44MTYgMjIuNTkyLTE3LjAyNCA0NC40OC0xNy4wMjRsNjc0LjI0IDBjMjEuOTIgMCAzOC4xMTIgNi4xNzYgNDQuNDggMTcuMDI0IDYuMzM2IDEwLjgxNiAzLjg3MiAyOC02LjgxNiA0Ny4xMzZMNTQ2LjI0IDcwNS4xODRDNTM1Ljg3MiA3MjMuNzc2IDUyMi45NzYgNzM0Ljg4IDUxMS44MDggNzM0Ljg4ek01MTIgMjU2Yy0xNy42NjQgMC0zMiAxNC4zMDQtMzIgMzJsMCAyODhjMCAxNy42NjQgMTQuMzM2IDMyIDMyIDMyczMyLTE0LjMzNiAzMi0zMmwwLTI4OEM1NDQgMjcwLjMwNCA1MjkuNjY0IDI1NiA1MTIgMjU2ek01MTIgMTQzLjg3Mm0tNDggMGExLjUgMS41IDAgMSAwIDk2IDAgMS41IDEuNSAwIDEgMC05NiAwWiIgIGhvcml6LWFkdi14PSIxMDI0IiAvPgoKICAgIAogICAgPGdseXBoIGdseXBoLW5hbWU9ImZhbmd4aW5neHVhbnpob25nIiB1bmljb2RlPSImIzU5MTcwOyIgZD0iTTcyNi45NzY2OTcgNTAyLjgxNTg1OGMtMTIuNTQzNjkgMTIuNDQ3MzU5LTMyLjgzMTcxNiAxMi4zMjAwNjUtNDUuMjQ4MTEyLTAuMjU2MzFMNDQ4LjQ0NzI1MiAyNjYuNzUxMjQzbC0xMDMuMjYzNTQgMTA2LjExMjE4OWMtMTIuMzUyNzQ4IDEyLjcwMzY2OS0zMi42MDgwOSAxMi45MjcyOTUtNDUuMjQ4MTEyIDAuNjM5OTE0LTEyLjY3MjcwNS0xMi4zMjAwNjUtMTIuOTU5OTc4LTMyLjYwODA5LTAuNjM5OTE0LTQ1LjI0ODExMmwxMjYuMDE2NjExLTEyOS41MDM0NTRjMC4wNjM2NDctMC4wOTYzMzEgMC4xOTI2NjItMC4wOTYzMzEgMC4yNTYzMS0wLjE5MjY2MiAwLjA2MzY0Ny0wLjA2MzY0NyAwLjA5NjMzMS0wLjE5MjY2MiAwLjE1OTk3OC0wLjI1NjMxIDIuMDE2MDczLTEuOTgzMzg5IDQuNTEyMDgyLTMuMTk5NTcgNi44ODA3OTYtNC41NDQ3NjUgMS4yNDcxNDQtMC42NzI1OTggMi4yMzk2OTktMS43OTI0NDcgMy41MTk1MjctMi4zMDMzNDYgMy44NzIxNjgtMS41OTk3ODUgOC4wMDA2NDUtMi4zOTk2NzcgMTIuMDk2NDM5LTIuMzk5Njc3IDQuMDY0ODMgMCA4LjEyNzk0IDAuNzk5ODkyIDExLjk2NzQyNCAyLjMzNjAzIDEuMjQ3MTQ0IDAuNTEyNjE5IDIuMjA4NzM1IDEuNTM2MTM4IDMuMzkyMjMyIDIuMTc2MDUyIDIuMzk5Njc3IDEuMzQzNDc1IDQuODk1Njg2IDIuNTI4NjkyIDYuOTQ0NDQzIDQuNTQ0NzY1IDAuMDYzNjQ3IDAuMDYzNjQ3IDAuMDk2MzMxIDAuMTkyNjYyIDAuMTkyNjYyIDAuMjU2MzEgMC4wNjM2NDcgMC4wOTYzMzEgMC4xNTk5NzggMC4xMjcyOTUgMC4yNTYzMSAwLjE5MjY2MmwyNTYuMjIzNjI2IDI1OS4wMDg2MjhDNzM5LjY0NzY4MiA0NzAuMTExNDM3IDczOS41MjAzODcgNDkwLjM2ODQ5OSA3MjYuOTc2Njk3IDUwMi44MTU4NTh6TTgzMi0zMi4wMDA4NmwtNjQwIDBjLTUyLjkyODggMC05Ni4wMDA4NiA0My4wNzIwNi05Ni4wMDA4NiA5NS45OTkxNGwwIDY0MGMwIDUyLjkyODggNDMuMDcyMDYgOTYuMDAwODYgOTYuMDAwODYgOTYuMDAwODZsNjQwIDBjNTIuOTI3MDggMCA5NS45OTkxNC00My4wNzIwNiA5NS45OTkxNC05Ni4wMDA4NmwwLTY0MEM5MjguMDAwODYgMTEuMDcxMiA4ODQuOTI4OC0zMi4wMDA4NiA4MzItMzIuMDAwODZ6TTE5MiA3MzUuOTk5MTRjLTE3LjYzMjAzOSAwLTMyLjAwMDg2LTE0LjM2ODgyMS0zMi4wMDA4Ni0zMi4wMDA4NmwwLTY0MGMwLTE3LjY2NDcyMiAxNC4zNjg4MjEtMzEuOTk5MTQgMzIuMDAwODYtMzEuOTk5MTRsNjQwIDBjMTcuNjY0NzIyIDAgMzEuOTk5MTQgMTQuMzM2MTM4IDMxLjk5OTE0IDMxLjk5OTE0bDAgNjQwYzAgMTcuNjMyMDM5LTE0LjMzNjEzOCAzMi4wMDA4Ni0zMS45OTkxNCAzMi4wMDA4NkwxOTIgNzM1Ljk5OTE0eiIgIGhvcml6LWFkdi14PSIxMDI0IiAvPgoKICAgIAogICAgPGdseXBoIGdseXBoLW5hbWU9Inh1YW56ZSIgdW5pY29kZT0iJiM1OTE4MjsiIGQ9Ik04ODcuOTA0NzQ0IDU5Ny43OTE0OGMtMTIuODYzNjQ3IDEyLjA2Mzc1NS0zMy4xNTE2NzMgMTEuNDg3NDg4LTQ1LjIxNTQyOC0xLjQwODg0M0w0MTUuOTM1NDkzIDE0Mi4wMTYxODEgMTgyLjgxNTg1OCAzNzEuNzEyNjE5Yy0xMi42MDczMzggMTIuNDE2Mzk2LTMyLjg2NDQgMTIuMjg3MzgxLTQ1LjI4MDc5Ni0wLjMxOTk1Ny0xMi40MTYzOTYtMTIuNTc2Mzc0LTEyLjI1NjQxNy0zMi44NjQ0IDAuMzUyNjQxLTQ1LjI0ODExMmwyNTYuNDc5OTM1LTI1Mi42NzE0MTVjMC4wOTYzMzEtMC4wOTYzMzEgMC4yMjM2MjYtMC4xMjcyOTUgMC4zMTk5NTctMC4yMjM2MjZzMC4xMjcyOTUtMC4yMjM2MjYgMC4yMjM2MjYtMC4zMTk5NTdjMi4wMTYwNzMtMS45MTk3NDIgNC40NDg0MzQtMy4wMDg2MjggNi43ODQ0NjQtNC4yODg0NTYgMS4xNTI1MzMtMC42NzI1OTggMi4xNDMzNjgtMS42NjM0MzIgMy4zNTk1NDgtMi4xNDMzNjggMy43NzU4MzctMS40NzI0OSA3Ljc3NTI5OS0yLjIzOTY5OSAxMS43NDM3OTgtMi4yMzk2OTkgNC4xOTIxMjUgMCA4LjM4NDI0OSAwLjgzMjU3NiAxMi4yODczODEgMi40OTYwMDkgMS4zMTI1MTIgMC41NDM1ODMgMi4zMzYwMyAxLjY2MzQzMiAzLjU1MjIxMSAyLjM2ODcxNCAyLjM5OTY3NyAxLjQwODg0MyA0Ljg5NTY4NiAyLjU5MjM0IDYuOTQ0NDQzIDQuNjcyMDYgMC4wOTYzMzEgMC4wOTYzMzEgMC4xMjcyOTUgMC4yNTYzMSAwLjIyMzYyNiAwLjM1MjY0MSAwLjA2MzY0NyAwLjA5NjMzMSAwLjE5MjY2MiAwLjEyNzI5NSAwLjI4NzI3MyAwLjIyMzYyNkw4ODkuMjc3NDYzIDU1Mi41Nzk0OTJDOTAxLjQzOTI2OSA1NjUuNDA4NzM1IDkwMC43NjgzOTEgNTg1LjY2NDA3NyA4ODcuOTA0NzQ0IDU5Ny43OTE0OHoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJzaGFuY2h1IiB1bmljb2RlPSImIzU5MjExOyIgZD0iTTYwNy44OTc4NjcgMTI3Ljk1Njk5NmMtMTcuNzE3NDUzIDAtMzEuOTk0NjI1IDE0LjI3NzE3MS0zMS45OTQ2MjUgMzEuOTk0NjI1TDU3NS45MDMyNDIgNTEyLjA2NDUwNWMwIDE3LjcxNzQ1MyAxNC4yNzcxNzEgMzEuOTk0NjI1IDMxLjk5NDYyNSAzMS45OTQ2MjVzMzEuOTk0NjI1LTE0LjI3NzE3MSAzMS45OTQ2MjUtMzEuOTk0NjI1bDAtMzUxLjk0MDg3QzYzOS44OTI0OTEgMTQyLjQwNjE4MiA2MjUuNjE1MzIgMTI3Ljk1Njk5NiA2MDcuODk3ODY3IDEyNy45NTY5OTZ6TTQxNS45MzAxMTkgMTI3Ljk1Njk5NmMtMTcuNzE3NDUzIDAtMzEuOTk0NjI1IDE0LjI3NzE3MS0zMS45OTQ2MjUgMzEuOTk0NjI1TDM4My45MzU0OTUgNTEyLjA2NDUwNWMwIDE3LjcxNzQ1MyAxNC4yNzcxNzEgMzEuOTk0NjI1IDMxLjk5NDYyNSAzMS45OTQ2MjUgMTcuNzE3NDUzIDAgMzEuOTk0NjI1LTE0LjI3NzE3MSAzMS45OTQ2MjUtMzEuOTk0NjI1bDAtMzUxLjk0MDg3QzQ0Ny45MjQ3NDQgMTQyLjQwNjE4MiA0MzMuNjQ3NTczIDEyNy45NTY5OTYgNDE1LjkzMDExOSAxMjcuOTU2OTk2ek05MjguMDE2MTI2IDY3Mi4wMzc2MjhsLTE1OS45NzMxMjMgMEw3NjguMDQzMDA0IDczNi4wMjY4NzdjMCA1Mi45ODAzNDYtNDIuNjU5NDk5IDk1Ljk4Mzg3NC05NS4yOTU4MTcgOTUuOTgzODc0TDM1MS45NDA4NyA4MzIuMDEwNzUxYy01Mi45ODAzNDYgMC05NS45ODM4NzQtNDMuMDAzNTI4LTk1Ljk4Mzg3NC05NS45ODM4NzRsMC02My45ODkyNDktMTU5Ljk3MzEyMyAwYy0xNy43MTc0NTMgMC0zMS45OTQ2MjUtMTQuMjc3MTcxLTMxLjk5NDYyNS0zMS45OTQ2MjVzMTQuMjc3MTcxLTMxLjk5NDYyNSAzMS45OTQ2MjUtMzEuOTk0NjI1bDgzMi4wMzIyNTMgMGMxNy43MTc0NTMgMCAzMS45OTQ2MjUgMTQuMjc3MTcxIDMxLjk5NDYyNSAzMS45OTQ2MjVTOTQ1LjczMzU4IDY3Mi4wMzc2MjggOTI4LjAxNjEyNiA2NzIuMDM3NjI4ek0zMTkuOTQ2MjQ2IDczNi4wMjY4NzdjMCAxNy41NDU0MzkgMTQuNDQ5MTg1IDMxLjk5NDYyNSAzMS45OTQ2MjUgMzEuOTk0NjI1bDMyMC44MDYzMTYgMGMxNy41NDU0MzkgMCAzMS4zMDY1NjgtMTQuMTA1MTU3IDMxLjMwNjU2OC0zMS45OTQ2MjVsMC02My45ODkyNDlMMzE5Ljk0NjI0NiA2NzIuMDM3NjI4IDMxOS45NDYyNDYgNzM2LjAyNjg3NyAzMTkuOTQ2MjQ2IDczNi4wMjY4Nzd6TTczNi4wNDgzNzktNjQuMDEwNzUxIDI4OC4xMjM2MzUtNjQuMDEwNzUxYy01Mi45ODAzNDYgMC05NS45ODM4NzQgNDMuMDAzNTI4LTk1Ljk4Mzg3NCA5NS45ODM4NzRMMTkyLjEzOTc2MSA1MTIuNDA4NTM0YzAgMTcuNzE3NDUzIDE0LjI3NzE3MSAzMS45OTQ2MjUgMzEuOTk0NjI1IDMxLjk5NDYyNXMzMS45OTQ2MjUtMTQuMjc3MTcxIDMxLjk5NDYyNS0zMS45OTQ2MjVsMC00ODAuNDM1NDExYzAtMTcuNzE3NDUzIDE0LjQ0OTE4NS0zMS45OTQ2MjUgMzEuOTk0NjI1LTMxLjk5NDYyNWw0NDguMDk2NzU4IDBjMTcuNzE3NDUzIDAgMzEuOTk0NjI1IDE0LjI3NzE3MSAzMS45OTQ2MjUgMzEuOTk0NjI1TDc2OC4yMTUwMTggNTExLjIwNDQzNWMwIDE3LjcxNzQ1MyAxNC4yNzcxNzEgMzEuOTk0NjI1IDMxLjk5NDYyNSAzMS45OTQ2MjVzMzEuOTk0NjI1LTE0LjI3NzE3MSAzMS45OTQ2MjUtMzEuOTk0NjI1bDAtNDc5LjIzMTMxMkM4MzIuMDMyMjUzLTIwLjgzNTIwOSA3ODkuMDI4NzI1LTY0LjAxMDc1MSA3MzYuMDQ4Mzc5LTY0LjAxMDc1MXoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKCgogIDwvZm9udD4KPC9kZWZzPjwvc3ZnPgo=') format('svg'); /* iOS 4.1- */ + src: url('data:image/eot;base64,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'); /* IE9*/ + src: url('data:image/eot;base64,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') format('embedded-opentype'), /* IE6-IE8 */ + url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'), + url('data:image/ttf;base64,AAEAAAALAIAAAwAwR1NVQrD+s+0AAAE4AAAAQk9TLzJW7kk6AAABfAAAAFZjbWFwbyWiuQAAAfAAAAHeZ2x5ZsG49g0AAAPgAAAECGhlYWQPk2N3AAAA4AAAADZoaGVhB94DiAAAALwAAAAkaG10eBvpAAAAAAHUAAAAHGxvY2EDfgQyAAAD0AAAABBtYXhwARYAYgAAARgAAAAgbmFtZT5U/n0AAAfoAAACbXBvc3RVALKVAAAKWAAAAGIAAQAAA4D/gABcBAAAAAAABAAAAQAAAAAAAAAAAAAAAAAAAAcAAQAAAAEAAFYkqmJfDzz1AAsEAAAAAADWOg+9AAAAANY6D70AAP+/BAADQQAAAAgAAgAAAAAAAAABAAAABwBWAAUAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKAB4ALAABREZMVAAIAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAAAAQP9AZAABQAIAokCzAAAAI8CiQLMAAAB6wAyAQgAAAIABQMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUGZFZABAAHjnSwOA/4AAXAOAAIAAAAABAAAAAAAABAAAAAPpAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAUAAAADAAAALAAAAAQAAAGGAAEAAAAAAIAAAwABAAAALAADAAoAAAGGAAQAVAAAAA4ACAACAAYAeOYn5mPnIucu50v//wAAAHjmJ+Zj5yLnLudL//8AAAAAAAAAAAAAAAAAAQAOAA4ADgAOAA4ADgAAAAEABgACAAMABAAFAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAABYAAAAAAAAAAYAAAB4AAAAeAAAAAEAAOYnAADmJwAAAAYAAOZjAADmYwAAAAIAAOciAADnIgAAAAMAAOcuAADnLgAAAAQAAOdLAADnSwAAAAUAAAAAAAAAdgDSAS4BXAHaAgQABQAA/+EDvAMYABMAKAAxAEQAUAAAAQYrASIOAh0BISc0LgIrARUhBRUXFA4DJyMnIQcjIi4DPQEXIgYUFjI2NCYXBgcGDwEOAR4BMyEyNicuAicBNTQ+AjsBMhYdAQEZGxpTEiUcEgOQAQoYJx6F/koCogEVHyMcDz4t/kksPxQyIBMIdwwSEhkSEowIBgUFCAICBA8OAW0XFgkFCQoG/qQFDxoVvB8pAh8BDBknGkxZDSAbEmGING4dJRcJAQGAgAETGyAOpz8RGhERGhF8GhYTEhkHEA0IGBoNIyQUAXfkCxgTDB0m4wAAAAAFAAD/3wPDAx8AEQAeACsALAA1AAAFISIuATY3AT4BMhYXAR4BDgEBBgcBBhYXIT4BJwEmAyImNRE0NjIWFREUBgcjPgEyFhQGIiYDUf1eIjQbAxABVBEvNS8RAVUQAxs0/o0SEf6sEBQiAqIiFBD+qxASDhISHBISDjABGygbGygbIRouOh4CYR4hIR79nx46LhoDAAEd/Z4dIgEBIh0CYh3+IhIOASAOEhIO/uAOEnAUGxspGxsAAwAA/98DoAMgABcAJwA3AAABJiIPAScuAQYUHwEWHwEWMj8BNjcBNiYTIS4BJxE+ATchHgEXEQ4BASIGFREUFjMhMjY1ETQmIwLXChkK6mcKGRQJfwMEAwYMBgQDBAEACgFg/YApNgEBNikCgCk2AQE2/VcOEhIOAoAOEhIOAfcJCexqCQETGgqCAgIDAgIDAQMBBAka/fMBNikCgCk2AQE2Kf2AKTYC/xIO/YAOEhIOAoAOEgAAAAEAAAAAA4MCXwAXAAABJgYHAScmIgYUFwUWHwEWMj8BNjcBNjQDeAoaCf5V6QoaEwoBAQMEAwYMBgQDBAHBCQJWCQEK/jrmCRQZCv0DAQMCAwICAwHfChkAAAAABQAA/78DwQNBAAwAGQAvADkAVQAAJSImNRE0NjIWFREUBiMiJjURNDYyFhURFAYBIzUuASchDgEHFSMiBhQWMyEyNjQmJTQ2MyEyFh0BIQEhLgEnETQ2MhYVERQWMyEyNjURPgEyFhURDgECYA4SEhwSEs4OEhIcEhIB8qABNij+vyk2AaAOEhIOA0AOEhL9khIOAUENEv6AAaD+QCk2ARMbEhMNAcAOEgESGxIBNoASDgFgDhISDv6gDhISDgFgDhISDv6gDhICIEApNgEBNilAEhwSEhwSQA4SEg5A/SABNikB4A4SEg7+IA4SEg4B3w4SEg7+ISk2AAAAAQAA/90C6QMoABIAAAEWFwEWDgEnASY3ATYXHgEHAQYBewcDAVASCioT/oohIQFwEhkWDQ3+qgMBgwUD/rERMA4PAXUiIQFxEwYHKBP+qgMAAAAAAAASAN4AAQAAAAAAAAAVAAAAAQAAAAAAAQAIABUAAQAAAAAAAgAHAB0AAQAAAAAAAwAIACQAAQAAAAAABAAIACwAAQAAAAAABQALADQAAQAAAAAABgAIAD8AAQAAAAAACgArAEcAAQAAAAAACwATAHIAAwABBAkAAAAqAIUAAwABBAkAAQAQAK8AAwABBAkAAgAOAL8AAwABBAkAAwAQAM0AAwABBAkABAAQAN0AAwABBAkABQAWAO0AAwABBAkABgAQAQMAAwABBAkACgBWARMAAwABBAkACwAmAWkKQ3JlYXRlZCBieSBpY29uZm9udAppY29uZm9udFJlZ3VsYXJpY29uZm9udGljb25mb250VmVyc2lvbiAxLjBpY29uZm9udEdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAAoAQwByAGUAYQB0AGUAZAAgAGIAeQAgAGkAYwBvAG4AZgBvAG4AdAAKAGkAYwBvAG4AZgBvAG4AdABSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdABpAGMAbwBuAGYAbwBuAHQAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdABHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAAAAgAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAQIBAwEEAQUBBgEHAQgAAXgEd2FybhFmYW5neGluZ3h1YW56aG9uZwZ4dWFuemUHc2hhbmNodQZpLWxlZnQAAAAA') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/ + url('data:image/svg;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiID4KPCEtLQoyMDEzLTktMzA6IENyZWF0ZWQuCi0tPgo8c3ZnPgo8bWV0YWRhdGE+CkNyZWF0ZWQgYnkgaWNvbmZvbnQKPC9tZXRhZGF0YT4KPGRlZnM+Cgo8Zm9udCBpZD0iaWNvbmZvbnQiIGhvcml6LWFkdi14PSIxMDI0IiA+CiAgPGZvbnQtZmFjZQogICAgZm9udC1mYW1pbHk9Imljb25mb250IgogICAgZm9udC13ZWlnaHQ9IjUwMCIKICAgIGZvbnQtc3RyZXRjaD0ibm9ybWFsIgogICAgdW5pdHMtcGVyLWVtPSIxMDI0IgogICAgYXNjZW50PSI4OTYiCiAgICBkZXNjZW50PSItMTI4IgogIC8+CiAgICA8bWlzc2luZy1nbHlwaCAvPgogICAgCiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ieCIgdW5pY29kZT0ieCIgaG9yaXotYWR2LXg9IjEwMDEiCmQ9Ik0yODEgNTQzcS0yNyAtMSAtNTMgLTFoLTgzcS0xOCAwIC0zNi41IC02dC0zMi41IC0xOC41dC0yMyAtMzJ0LTkgLTQ1LjV2LTc2aDkxMnY0MXEwIDE2IC0wLjUgMzB0LTAuNSAxOHEwIDEzIC01IDI5dC0xNyAyOS41dC0zMS41IDIyLjV0LTQ5LjUgOWgtMTMzdi05N2gtNDM4djk3ek05NTUgMzEwdi01MnEwIC0yMyAwLjUgLTUydDAuNSAtNTh0LTEwLjUgLTQ3LjV0LTI2IC0zMHQtMzMgLTE2dC0zMS41IC00LjVxLTE0IC0xIC0yOS41IC0wLjUKdC0yOS41IDAuNWgtMzJsLTQ1IDEyOGgtNDM5bC00NCAtMTI4aC0yOWgtMzRxLTIwIDAgLTQ1IDFxLTI1IDAgLTQxIDkuNXQtMjUuNSAyM3QtMTMuNSAyOS41dC00IDMwdjE2N2g5MTF6TTE2MyAyNDdxLTEyIDAgLTIxIC04LjV0LTkgLTIxLjV0OSAtMjEuNXQyMSAtOC41cTEzIDAgMjIgOC41dDkgMjEuNXQtOSAyMS41dC0yMiA4LjV6TTMxNiAxMjNxLTggLTI2IC0xNCAtNDhxLTUgLTE5IC0xMC41IC0zN3QtNy41IC0yNXQtMyAtMTV0MSAtMTQuNQp0OS41IC0xMC41dDIxLjUgLTRoMzdoNjdoODFoODBoNjRoMzZxMjMgMCAzNCAxMnQyIDM4cS01IDEzIC05LjUgMzAuNXQtOS41IDM0LjVxLTUgMTkgLTExIDM5aC0zNjh6TTMzNiA0OTh2MjI4cTAgMTEgMi41IDIzdDEwIDIxLjV0MjAuNSAxNS41dDM0IDZoMTg4cTMxIDAgNTEuNSAtMTQuNXQyMC41IC01Mi41di0yMjdoLTMyN3oiIC8+CiAgICAKCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJ3YXJuIiB1bmljb2RlPSImIzU4OTc5OyIgZD0iTTg0OS4xMi0zMi43MDQgMTc0Ljg4LTMyLjcwNGMtNDUuMjE2IDAtODEuNTM2IDE3LjcyOC05OS42OCA0OC42NC0xOC4xNDQgMzAuOTEyLTE1LjkzNiA3MS4yOTYgNi4wOCAxMTAuNzUyTDQyMS40NzIgNzM2LjM1MmMyMi4xNDQgMzkuNzQ0IDU1LjA3MiA2Mi41MjggOTAuMzA0IDYyLjUyOHM2OC4xMjgtMjIuNzUyIDkwLjMzNi02Mi40NjRsMzQwLjU0NC02MDkuNzkyYzIyLjAxNi0zOS40NTYgMjQuMjg4LTc5LjgwOCA2LjExMi0xMTAuNzJDOTMwLjY1Ni0xNS4wMDggODk0LjMwNC0zMi43MDQgODQ5LjEyLTMyLjcwNHpNNTExLjgwOCA3MzQuODhjLTExLjIgMC0yNC4wMzItMTEuMTA0LTM0LjQzMi0yOS42OTZMMTM3LjE4NCA5NS40NTZjLTEwLjY1Ni0xOS4xMzYtMTMuMTUyLTM2LjMyLTYuNzg0LTQ3LjE2OCA2LjM2OC0xMC44MTYgMjIuNTkyLTE3LjAyNCA0NC40OC0xNy4wMjRsNjc0LjI0IDBjMjEuOTIgMCAzOC4xMTIgNi4xNzYgNDQuNDggMTcuMDI0IDYuMzM2IDEwLjgxNiAzLjg3MiAyOC02LjgxNiA0Ny4xMzZMNTQ2LjI0IDcwNS4xODRDNTM1Ljg3MiA3MjMuNzc2IDUyMi45NzYgNzM0Ljg4IDUxMS44MDggNzM0Ljg4ek01MTIgMjU2Yy0xNy42NjQgMC0zMiAxNC4zMDQtMzIgMzJsMCAyODhjMCAxNy42NjQgMTQuMzM2IDMyIDMyIDMyczMyLTE0LjMzNiAzMi0zMmwwLTI4OEM1NDQgMjcwLjMwNCA1MjkuNjY0IDI1NiA1MTIgMjU2ek01MTIgMTQzLjg3Mm0tNDggMGExLjUgMS41IDAgMSAwIDk2IDAgMS41IDEuNSAwIDEgMC05NiAwWiIgIGhvcml6LWFkdi14PSIxMDI0IiAvPgoKICAgIAogICAgPGdseXBoIGdseXBoLW5hbWU9ImZhbmd4aW5neHVhbnpob25nIiB1bmljb2RlPSImIzU5MTcwOyIgZD0iTTcyNi45NzY2OTcgNTAyLjgxNTg1OGMtMTIuNTQzNjkgMTIuNDQ3MzU5LTMyLjgzMTcxNiAxMi4zMjAwNjUtNDUuMjQ4MTEyLTAuMjU2MzFMNDQ4LjQ0NzI1MiAyNjYuNzUxMjQzbC0xMDMuMjYzNTQgMTA2LjExMjE4OWMtMTIuMzUyNzQ4IDEyLjcwMzY2OS0zMi42MDgwOSAxMi45MjcyOTUtNDUuMjQ4MTEyIDAuNjM5OTE0LTEyLjY3MjcwNS0xMi4zMjAwNjUtMTIuOTU5OTc4LTMyLjYwODA5LTAuNjM5OTE0LTQ1LjI0ODExMmwxMjYuMDE2NjExLTEyOS41MDM0NTRjMC4wNjM2NDctMC4wOTYzMzEgMC4xOTI2NjItMC4wOTYzMzEgMC4yNTYzMS0wLjE5MjY2MiAwLjA2MzY0Ny0wLjA2MzY0NyAwLjA5NjMzMS0wLjE5MjY2MiAwLjE1OTk3OC0wLjI1NjMxIDIuMDE2MDczLTEuOTgzMzg5IDQuNTEyMDgyLTMuMTk5NTcgNi44ODA3OTYtNC41NDQ3NjUgMS4yNDcxNDQtMC42NzI1OTggMi4yMzk2OTktMS43OTI0NDcgMy41MTk1MjctMi4zMDMzNDYgMy44NzIxNjgtMS41OTk3ODUgOC4wMDA2NDUtMi4zOTk2NzcgMTIuMDk2NDM5LTIuMzk5Njc3IDQuMDY0ODMgMCA4LjEyNzk0IDAuNzk5ODkyIDExLjk2NzQyNCAyLjMzNjAzIDEuMjQ3MTQ0IDAuNTEyNjE5IDIuMjA4NzM1IDEuNTM2MTM4IDMuMzkyMjMyIDIuMTc2MDUyIDIuMzk5Njc3IDEuMzQzNDc1IDQuODk1Njg2IDIuNTI4NjkyIDYuOTQ0NDQzIDQuNTQ0NzY1IDAuMDYzNjQ3IDAuMDYzNjQ3IDAuMDk2MzMxIDAuMTkyNjYyIDAuMTkyNjYyIDAuMjU2MzEgMC4wNjM2NDcgMC4wOTYzMzEgMC4xNTk5NzggMC4xMjcyOTUgMC4yNTYzMSAwLjE5MjY2MmwyNTYuMjIzNjI2IDI1OS4wMDg2MjhDNzM5LjY0NzY4MiA0NzAuMTExNDM3IDczOS41MjAzODcgNDkwLjM2ODQ5OSA3MjYuOTc2Njk3IDUwMi44MTU4NTh6TTgzMi0zMi4wMDA4NmwtNjQwIDBjLTUyLjkyODggMC05Ni4wMDA4NiA0My4wNzIwNi05Ni4wMDA4NiA5NS45OTkxNGwwIDY0MGMwIDUyLjkyODggNDMuMDcyMDYgOTYuMDAwODYgOTYuMDAwODYgOTYuMDAwODZsNjQwIDBjNTIuOTI3MDggMCA5NS45OTkxNC00My4wNzIwNiA5NS45OTkxNC05Ni4wMDA4NmwwLTY0MEM5MjguMDAwODYgMTEuMDcxMiA4ODQuOTI4OC0zMi4wMDA4NiA4MzItMzIuMDAwODZ6TTE5MiA3MzUuOTk5MTRjLTE3LjYzMjAzOSAwLTMyLjAwMDg2LTE0LjM2ODgyMS0zMi4wMDA4Ni0zMi4wMDA4NmwwLTY0MGMwLTE3LjY2NDcyMiAxNC4zNjg4MjEtMzEuOTk5MTQgMzIuMDAwODYtMzEuOTk5MTRsNjQwIDBjMTcuNjY0NzIyIDAgMzEuOTk5MTQgMTQuMzM2MTM4IDMxLjk5OTE0IDMxLjk5OTE0bDAgNjQwYzAgMTcuNjMyMDM5LTE0LjMzNjEzOCAzMi4wMDA4Ni0zMS45OTkxNCAzMi4wMDA4NkwxOTIgNzM1Ljk5OTE0eiIgIGhvcml6LWFkdi14PSIxMDI0IiAvPgoKICAgIAogICAgPGdseXBoIGdseXBoLW5hbWU9Inh1YW56ZSIgdW5pY29kZT0iJiM1OTE4MjsiIGQ9Ik04ODcuOTA0NzQ0IDU5Ny43OTE0OGMtMTIuODYzNjQ3IDEyLjA2Mzc1NS0zMy4xNTE2NzMgMTEuNDg3NDg4LTQ1LjIxNTQyOC0xLjQwODg0M0w0MTUuOTM1NDkzIDE0Mi4wMTYxODEgMTgyLjgxNTg1OCAzNzEuNzEyNjE5Yy0xMi42MDczMzggMTIuNDE2Mzk2LTMyLjg2NDQgMTIuMjg3MzgxLTQ1LjI4MDc5Ni0wLjMxOTk1Ny0xMi40MTYzOTYtMTIuNTc2Mzc0LTEyLjI1NjQxNy0zMi44NjQ0IDAuMzUyNjQxLTQ1LjI0ODExMmwyNTYuNDc5OTM1LTI1Mi42NzE0MTVjMC4wOTYzMzEtMC4wOTYzMzEgMC4yMjM2MjYtMC4xMjcyOTUgMC4zMTk5NTctMC4yMjM2MjZzMC4xMjcyOTUtMC4yMjM2MjYgMC4yMjM2MjYtMC4zMTk5NTdjMi4wMTYwNzMtMS45MTk3NDIgNC40NDg0MzQtMy4wMDg2MjggNi43ODQ0NjQtNC4yODg0NTYgMS4xNTI1MzMtMC42NzI1OTggMi4xNDMzNjgtMS42NjM0MzIgMy4zNTk1NDgtMi4xNDMzNjggMy43NzU4MzctMS40NzI0OSA3Ljc3NTI5OS0yLjIzOTY5OSAxMS43NDM3OTgtMi4yMzk2OTkgNC4xOTIxMjUgMCA4LjM4NDI0OSAwLjgzMjU3NiAxMi4yODczODEgMi40OTYwMDkgMS4zMTI1MTIgMC41NDM1ODMgMi4zMzYwMyAxLjY2MzQzMiAzLjU1MjIxMSAyLjM2ODcxNCAyLjM5OTY3NyAxLjQwODg0MyA0Ljg5NTY4NiAyLjU5MjM0IDYuOTQ0NDQzIDQuNjcyMDYgMC4wOTYzMzEgMC4wOTYzMzEgMC4xMjcyOTUgMC4yNTYzMSAwLjIyMzYyNiAwLjM1MjY0MSAwLjA2MzY0NyAwLjA5NjMzMSAwLjE5MjY2MiAwLjEyNzI5NSAwLjI4NzI3MyAwLjIyMzYyNkw4ODkuMjc3NDYzIDU1Mi41Nzk0OTJDOTAxLjQzOTI2OSA1NjUuNDA4NzM1IDkwMC43NjgzOTEgNTg1LjY2NDA3NyA4ODcuOTA0NzQ0IDU5Ny43OTE0OHoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJzaGFuY2h1IiB1bmljb2RlPSImIzU5MjExOyIgZD0iTTYwNy44OTc4NjcgMTI3Ljk1Njk5NmMtMTcuNzE3NDUzIDAtMzEuOTk0NjI1IDE0LjI3NzE3MS0zMS45OTQ2MjUgMzEuOTk0NjI1TDU3NS45MDMyNDIgNTEyLjA2NDUwNWMwIDE3LjcxNzQ1MyAxNC4yNzcxNzEgMzEuOTk0NjI1IDMxLjk5NDYyNSAzMS45OTQ2MjVzMzEuOTk0NjI1LTE0LjI3NzE3MSAzMS45OTQ2MjUtMzEuOTk0NjI1bDAtMzUxLjk0MDg3QzYzOS44OTI0OTEgMTQyLjQwNjE4MiA2MjUuNjE1MzIgMTI3Ljk1Njk5NiA2MDcuODk3ODY3IDEyNy45NTY5OTZ6TTQxNS45MzAxMTkgMTI3Ljk1Njk5NmMtMTcuNzE3NDUzIDAtMzEuOTk0NjI1IDE0LjI3NzE3MS0zMS45OTQ2MjUgMzEuOTk0NjI1TDM4My45MzU0OTUgNTEyLjA2NDUwNWMwIDE3LjcxNzQ1MyAxNC4yNzcxNzEgMzEuOTk0NjI1IDMxLjk5NDYyNSAzMS45OTQ2MjUgMTcuNzE3NDUzIDAgMzEuOTk0NjI1LTE0LjI3NzE3MSAzMS45OTQ2MjUtMzEuOTk0NjI1bDAtMzUxLjk0MDg3QzQ0Ny45MjQ3NDQgMTQyLjQwNjE4MiA0MzMuNjQ3NTczIDEyNy45NTY5OTYgNDE1LjkzMDExOSAxMjcuOTU2OTk2ek05MjguMDE2MTI2IDY3Mi4wMzc2MjhsLTE1OS45NzMxMjMgMEw3NjguMDQzMDA0IDczNi4wMjY4NzdjMCA1Mi45ODAzNDYtNDIuNjU5NDk5IDk1Ljk4Mzg3NC05NS4yOTU4MTcgOTUuOTgzODc0TDM1MS45NDA4NyA4MzIuMDEwNzUxYy01Mi45ODAzNDYgMC05NS45ODM4NzQtNDMuMDAzNTI4LTk1Ljk4Mzg3NC05NS45ODM4NzRsMC02My45ODkyNDktMTU5Ljk3MzEyMyAwYy0xNy43MTc0NTMgMC0zMS45OTQ2MjUtMTQuMjc3MTcxLTMxLjk5NDYyNS0zMS45OTQ2MjVzMTQuMjc3MTcxLTMxLjk5NDYyNSAzMS45OTQ2MjUtMzEuOTk0NjI1bDgzMi4wMzIyNTMgMGMxNy43MTc0NTMgMCAzMS45OTQ2MjUgMTQuMjc3MTcxIDMxLjk5NDYyNSAzMS45OTQ2MjVTOTQ1LjczMzU4IDY3Mi4wMzc2MjggOTI4LjAxNjEyNiA2NzIuMDM3NjI4ek0zMTkuOTQ2MjQ2IDczNi4wMjY4NzdjMCAxNy41NDU0MzkgMTQuNDQ5MTg1IDMxLjk5NDYyNSAzMS45OTQ2MjUgMzEuOTk0NjI1bDMyMC44MDYzMTYgMGMxNy41NDU0MzkgMCAzMS4zMDY1NjgtMTQuMTA1MTU3IDMxLjMwNjU2OC0zMS45OTQ2MjVsMC02My45ODkyNDlMMzE5Ljk0NjI0NiA2NzIuMDM3NjI4IDMxOS45NDYyNDYgNzM2LjAyNjg3NyAzMTkuOTQ2MjQ2IDczNi4wMjY4Nzd6TTczNi4wNDgzNzktNjQuMDEwNzUxIDI4OC4xMjM2MzUtNjQuMDEwNzUxYy01Mi45ODAzNDYgMC05NS45ODM4NzQgNDMuMDAzNTI4LTk1Ljk4Mzg3NCA5NS45ODM4NzRMMTkyLjEzOTc2MSA1MTIuNDA4NTM0YzAgMTcuNzE3NDUzIDE0LjI3NzE3MSAzMS45OTQ2MjUgMzEuOTk0NjI1IDMxLjk5NDYyNXMzMS45OTQ2MjUtMTQuMjc3MTcxIDMxLjk5NDYyNS0zMS45OTQ2MjVsMC00ODAuNDM1NDExYzAtMTcuNzE3NDUzIDE0LjQ0OTE4NS0zMS45OTQ2MjUgMzEuOTk0NjI1LTMxLjk5NDYyNWw0NDguMDk2NzU4IDBjMTcuNzE3NDUzIDAgMzEuOTk0NjI1IDE0LjI3NzE3MSAzMS45OTQ2MjUgMzEuOTk0NjI1TDc2OC4yMTUwMTggNTExLjIwNDQzNWMwIDE3LjcxNzQ1MyAxNC4yNzcxNzEgMzEuOTk0NjI1IDMxLjk5NDYyNSAzMS45OTQ2MjVzMzEuOTk0NjI1LTE0LjI3NzE3MSAzMS45OTQ2MjUtMzEuOTk0NjI1bDAtNDc5LjIzMTMxMkM4MzIuMDMyMjUzLTIwLjgzNTIwOSA3ODkuMDI4NzI1LTY0LjAxMDc1MSA3MzYuMDQ4Mzc5LTY0LjAxMDc1MXoiICBob3Jpei1hZHYteD0iMTAyNCIgLz4KCiAgICAKICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJpLWxlZnQiIHVuaWNvZGU9IiYjNTg5MTk7IiBkPSJNMzc5LjEwNCAzODYuNjU2YzQuNjQ3LTMuNDY1IDcuNzA3LTUuMjExIDEwLjEwMi03LjYxNCAxMTEuODgyLTExMS43NzcgMjIzLjY4LTIyMy42NDIgMzM1LjU4NC0zMzUuMzk1IDExLjQ5OC0xMS40ODIgMTcuNjAxLTI0LjQzMiAxNC4wNjAtNDAuODkzLTYuNTQ5LTMwLjQ0NC00Mi43MjQtNDMuMDU2LTY2LjcwMi0yMy4yMDctMi42MzggMi4xNzktNS4wMDYgNC42OTEtNy40MyA3LjExNi0xMjIuMTQ3IDEyMi4xMzEtMjQ0LjI5MSAyNDQuMjY4LTM2Ni40MzQgMzY2LjQxMS0yMi4yMTggMjIuMjE4LTIyLjIzNiA0NC45NDQtMC4wMzMgNjcuMTQzIDEyMi43NDkgMTIyLjc1NSAyNDUuNTQ4IDI0NS40NTEgMzY4LjE4NSAzNjguMzE2IDEyLjE2NiAxMi4xOTEgMjYuMDYyIDE3LjU4OSA0Mi43MzQgMTMuMzI3IDI4Ljk1Ny03LjM5NSA0MC4yNDctNDIuNTExIDIxLjQ2Mi02NS44MjctMi4zMjMtMi44ODEtNS4wNDYtNS40NTctNy42NjktOC4wODMtMTExLjIxNC0xMTEuMjI4LTIyMi40MzUtMjIyLjQ1OS0zMzMuNzA2LTMzMy42MzQtMi40MDctMi40MDQtNS40NjktNC4xNjYtMTAuMTQ4LTcuNjZ6IiAgaG9yaXotYWR2LXg9IjEwMjQiIC8+CgogICAgCgoKICA8L2ZvbnQ+CjwvZGVmcz48L3N2Zz4K') format('svg'); /* iOS 4.1- */ } .iconfont { @@ -710,4 +800,42 @@ div.sm_result_area div.pagination>ul>li.pageInfoBox>a:hover { .icon-warn:before { content: "\e663"; } .icon-selectall:before { content: "\e722"; } .icon-selected:before { content: "\e72e"; } -.icon-removeall:before { content: "\e74b"; } \ No newline at end of file +.icon-removeall:before { content: "\e74b"; } +.icon-back:before { content: "\e627"; } + +/* css animate */ +.vivify { + -webkit-animation-duration: .1s; + -webkit-animation-fill-mode: both; + animation-duration: .1s; + animation-fill-mode: both; } +.fadeInRight { + -webkit-animation-name: fadeInRight; + animation-name: fadeInRight; + -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); + animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); } + +@keyframes fadeInRight { + 0% { + -webkit-transform: translate3d(100px, 0, 0); + transform: translate3d(100px, 0, 0); + opacity: 0; } + 100% { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; } } +.fadeInLeft { + -webkit-animation-name: fadeInLeft; + animation-name: fadeInLeft; + -webkit-animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); + animation-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); } + +@keyframes fadeInLeft { + 0% { + -webkit-transform: translate3d(-100px, 0, 0); + transform: translate3d(-100px, 0, 0); + opacity: 0; } + 100% { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; } } \ No newline at end of file diff --git a/selectmenu.js b/selectmenu.js index 987d185..b6ed61b 100644 --- a/selectmenu.js +++ b/selectmenu.js @@ -1,8 +1,8 @@ /** * @summary SelectMenu - * @desc 基于jQuery的下拉菜单选择器 + * @desc Simple, easily and diversity menu solution * @file selectmenu.js - * @version 1.0 + * @version 2.0 * @author TerryZeng * @contact https://terryz.github.io/ * @license MIT License @@ -10,155 +10,182 @@ * depend on: * jQuery1.x * - * Changelog: */ ;(function($){ "use strict"; + /** + * Version: v3.6.1 + * The MIT License: Copyright (c) 2010-2017 LiosK. + * Link: https://github.com/LiosK/UUID.js + */ + var UUID; + UUID=function(f){function a(){}a.generate=function(){var b=a._getRandomInt,c=a._hexAligner;return c(b(32),8)+"-"+c(b(16),4)+"-"+c(16384|b(12),4)+"-"+c(32768|b(14),4)+"-"+c(b(48),12)};a._getRandomInt=function(b){if(0>b||53>>30-b};a._hexAligner=function(b,c){for(var a=b.toString(16),d=c-a.length,e="0";0>>=1,e+=e)d&1&&(a=e+a);return a};a.overwrittenUUID=f;"undefined"!==typeof module&&module&&module.exports&& + (module.exports=a);return a}(UUID); /** - * 默认参数集 + * Default options */ var defaults = { /** - * 数据源(json格式数据源或function处理后返回的数据源) - * @type {array | function} + * Menu data source + * @type array | function * @example - * string:服务端请求的URL地址 - * Object:JSON格式数组,推荐格式:[{a:1,b:2,c:3},{...}] + * array:[{a:1,b:2,c:3},{...}] + * function: function(){ return [{...}];} + * return data format is same to array */ data: undefined, /** - * 是否显示快速搜索输入框,默认显示 - * 仅在高级模式下可用 + * Show quick search input element, work on advance menu mode * @type boolean + * @default true */ search : true, /** - * 标题栏文本 - * @type string 默认 'SelectMenu' + * Title bar text, set false to close title bar + * @type string | boolean + * @default 'SelectMenu' */ title : 'SelectMenu', /** - * 常规菜单模式 - * @type boolean 默认 false + * Regular menu mode + * @type boolean + * @default false */ regular : false, /** - * 鼠标右键触发模式 - * @type boolean 默认 false + * Mouse right click to show menu + * @type boolean + * @default false */ rightClick : false, /** - * 在弹出式菜单的模式下(非嵌入式),是否显示箭头 - * @type boolean 默认 false + * Menu show arrow, look like a bubble + * @type boolean + * @default false */ arrow : false, /** - * 菜单对齐方向 - * @type string 默认 'left' + * Alignment direction + * @type string * @enum * 'left' * 'center' * 'right' + * @default 'left' */ position : 'left', /** - * 嵌入到页面中,非弹出模式 - * @type boolean 默认 false + * Embedded to page + * @type boolean + * @default false */ embed : false, /** - * 插件显示语言 ('ja', 'en', 'es', 'pt-br'等) - * @type string 默认'cn' + * Language ('cn', 'ja', 'en', 'es', 'pt-br') + * @type string + * @default 'cn' */ lang: 'cn', /** - * 是否为多选模式(标签模式) - * @type boolean 默认值false + * Multiple select mode(tags) + * @type boolean + * @default false */ multiple: false, /** - * 列表显示的项目个数,其它的项目以滚动条滚动方式展现 - * @type number 默认值 10 + * Menu result list size, the number mean is visible menu item amount + * @type number + * @default 10 */ listSize : 10, /** - * 多选模式下最大选择个数,0为不限制 - * @type number 默认0 + * Maximum selected item limit in multiple select mode, set 0 to unlimited + * @type number + * @default 0 (unlimited) */ maxSelectLimit: 0, /** - * 选中项目后关闭列表 - * 该设置仅在多选模式下multiple:true有效 - * @type boolean 默认值true + * Close result list after menu item selected, work on multiple select mode + * @type boolean + * @default true */ selectToCloseList: false, /** - * 插件初始值指定,该值会与option.keyField字段进行匹配,若匹配到,则自动设置选中并高亮 + * Set a key to selected menu item when plugin init complete, work on multiple select mode + * the key will match to keyField * @type string */ initSelected: undefined, /** - * 值字段,通常该字段的内容会自动保存在隐藏域中 - * @type string 默认值为'id' + * Key field to return data + * @type string + * @default 'id' */ keyField: 'id', /** - * 结果集中用于显示的属性名 - * @type string 默认字段为'name' - */ - showField: 'name', - /** - * 查询字段,不设置则默认使用showField设置的字段 + * Show content field * @type string + * @default 'name' */ - searchField : undefined, + showField: 'name', + /** + * Data field in search, not set default used showField + * @type string + */ + searchField : undefined, /** - * 查询方式 ('AND' or 'OR') - * @type string 默认为'AND' + * Filter type ('AND' or 'OR') + * @type string default: 'AND' */ andOr: 'AND', /** - * 数据排序方式 - * @type array 若不设置则默认对showField指定的字段进行排序 + * Sort order, not set default used showField + * @type array * @example - * orderBy : ['id desc']//对ID字段进行降序排序 + * orderBy : ['id desc']//order by id desc */ orderBy: undefined, /** - * 最大显示的项目个数 + * Max item size * @type number */ pageSize: 100, /** - * 列表项目显示内容格式化 + * Menu item result format * @type function - * @param data {object} 行数据object格式 + * @param data {object} menu item data * @return string */ formatItem : undefined, /** - * -----------------------------------------事件回调-------------------------------------------- + * -----------------------------------------Event-------------------------------------------- */ /** + * Menu item select callback * @type function * @param object * @param dom */ - eSelect : undefined + eSelect : undefined, + /** + * Multiple group data type tab switch callback + * @type function + * @param index {number} + */ + eTabSwitch : undefined }; /** * @constructor - * 插件初始化 - * @param {Object} input - 插件的初始化输入框元素。 - * @param {Object} option - 初始化参数 + * @param {Object} input - menu caller + * @param {Object} option - menu init option */ var SelectMenu = function(input, option) { this.target = input; this.setOption(option); if(this.option.embed && !$(input).is('div')){ - console.warn('SelectMenu embed mode need a div container element!'); + console.warn('SelectMenu embed mode need a "div" container element!'); return; } @@ -175,63 +202,46 @@ if(!option.embed) this.eWhole(); this.atLast(); }; - SelectMenu.version = '1.0'; + /** + * Plugin version number + */ + SelectMenu.version = '2.0'; /** - * 插件缓存内部对象的KEY + * Plugin object cache key */ SelectMenu.dataKey = 'selectMenuObject'; - /** - * 全局范围设置当前点击是否为插件自身的标识 - */ - SelectMenu.objStatusKey = 'selectMenu-self-mark'; - /** - * 全局范围设置当前点击的selectmenu的索引下标 - */ - SelectMenu.objStatusIndex = 'selectMenu-self-index'; - /** - * 数据源格式 - * 列表模式 - * @type {string} + * Data source type + * List type */ SelectMenu.dataTypeList = 'SelectMenuList'; /** - * 分组类型 - * @type {string} + * Group type */ SelectMenu.dataTypeGroup = 'SelectMenuGroup'; /** - * 普通菜单类型 - * @type {string} + * Regular menu type */ SelectMenu.dataTypeMenu = 'SelectMenuMenu'; /** - * 参数初始化 - * @param {Object} option - 参数集 + * Initial plugin option + * @param {Object} option */ SelectMenu.prototype.setOption = function(option) { - //若没有设置搜索字段,则使用显示字段作为搜索字段 - option.searchField = (option.searchField === undefined) ? option.showField: option.searchField; + //if not set, default used showField set field + option.searchField = option.searchField || option.showField; if(option.regular && option.title === defaults.title) option.title = false; - //嵌入模式或鼠标右键模式中,强制关闭菜单箭头 - if(option.embed || option.richCombo) option.arrow = false; + //Close arrow in embed and mouse right click mode + if(option.embed || option.rightClick) option.arrow = false; - //统一大写 option.andOr = option.andOr.toUpperCase(); if(option.andOr!=='AND' && option.andOr!=='OR') option.andOr = 'AND'; - //将参数内容从使用","分隔的字符串转换为数组 - var arr = ['searchField']; - for (var i = 0; i < arr.length; i++) { - option[arr[i]] = this.strToArray(option[arr[i]]); - } - - //设置排序字段 - option.orderBy = (option.orderBy === undefined) ? option.searchField: option.orderBy; + option.orderBy = (option.orderBy === undefined) ? option.showField : option.orderBy; - //设置多字段排序 - //例: [ ['id', 'ASC'], ['name', 'DESC'] ] + //Multiple field sort + //Example: [ ['id', 'ASC'], ['name', 'DESC'] ] option.orderBy = this.setOrderbyOption(option.orderBy, option.showField); if($.type(option.data) === 'string'){ @@ -243,20 +253,10 @@ }; /** - * 字符串转换为数组 - * @param str {string} - 字符串 - * @return {Array} - 数组 - */ - SelectMenu.prototype.strToArray = function(str) { - if(!str) return ''; - return str.replace(/[\s ]+/g, '').split(','); - }; - - /** - * 设置多字段排序 - * @param {Array} arg_order - 排序顺序 - * @param {string} arg_field - 字段 - * @return {Array} - 处理后的排序字段内容 + * Initial order + * @param {Array} arg_order + * @param {string} arg_field + * @return {Array} */ SelectMenu.prototype.setOrderbyOption = function(arg_order, arg_field) { var arr = [],orders = []; @@ -273,7 +273,7 @@ }; /** - * 界面文字国际化 + * i18n */ SelectMenu.prototype.setLanguage = function() { var message; @@ -288,7 +288,8 @@ select_ng: '请注意:请从列表中选择.', select_ok: 'OK : 已经选择.', not_found: '无查询结果', - ajax_error: '连接到服务器时发生错误!' + ajax_error: '连接到服务器时发生错误!', + max_selected: '最多只能选择 max_selected_limit 个项目' }; break; // English @@ -301,7 +302,8 @@ select_ng: 'Attention : Please choose from among the list.', select_ok: 'OK : Correctly selected.', not_found: 'not found', - ajax_error: 'An error occurred while connecting to server.' + ajax_error: 'An error occurred while connecting to server.', + max_selected: 'You can only select up to max_selected_limit items' }; break; // Japanese @@ -314,7 +316,8 @@ select_ng: '注意 : リストの中から選択してください', select_ok: 'OK : 正しく選択されました。', not_found: '(0 件)', - ajax_error: 'サーバとの通信でエラーが発生しました。' + ajax_error: 'サーバとの通信でエラーが発生しました。', + max_selected: '最多で max_selected_limit のプロジェクトを選ぶことしかできません' }; break; // German @@ -327,7 +330,8 @@ select_ng: 'Achtung: Bitte wählen Sie aus der Liste aus.', select_ok: 'OK : Richtig ausgewählt.', not_found: 'nicht gefunden', - ajax_error: 'Bei der Verbindung zum Server ist ein Fehler aufgetreten.' + ajax_error: 'Bei der Verbindung zum Server ist ein Fehler aufgetreten.', + max_selected: 'Sie können nur bis zu max_selected_limit Elemente auswählen' }; break; // Spanish @@ -340,7 +344,8 @@ select_ng: 'Atencion: Elija una opcion de la lista.', select_ok: 'OK: Correctamente seleccionado.', not_found: 'no encuentre', - ajax_error: 'Un error ocurrió mientras conectando al servidor.' + ajax_error: 'Un error ocurrió mientras conectando al servidor.', + max_selected: 'Solo puedes seleccionar hasta max_selected_limit elementos' }; break; // Brazilian Portuguese @@ -353,7 +358,8 @@ select_ng: 'Atenção: Escolha uma opção da lista.', select_ok: 'OK: Selecionado Corretamente.', not_found: 'não encontrado', - ajax_error: 'Um erro aconteceu enquanto conectando a servidor.' + ajax_error: 'Um erro aconteceu enquanto conectando a servidor.', + max_selected: 'Você só pode selecionar até max_selected_limit itens' }; break; } @@ -361,13 +367,12 @@ }; /** - * CSS样式表名称字义 + * CSS classname set */ SelectMenu.prototype.setCssClass = function() { var css_class = { target_clicked : 'sm_target_clicked', container: 'sm_container', - // SelectMenu最外层DIV的打开状态 container_open: 'sm_container_open', container_embed: 'sm_embed', header: 'sm_header', @@ -376,9 +381,7 @@ re_list: 'sm_list_mode', control_box: 'sm_control_box', two_btn: 'sm_two_btn', - //标签及输入框的 element_box: 'sm_element_box', - // 下拉结果列表 results: 'sm_results', re_off: 'sm_results_off', select: 'sm_over', @@ -391,52 +394,58 @@ message_box: 'sm_message_box', btn_close: 'sm_close_button', - btn_selectall : 'sm_selectall_button', - btn_removeall : 'sm_removeall_button', + btn_selectall: 'sm_selectall_button', + btn_removeall: 'sm_removeall_button', btn_on: 'sm_btn_on', btn_out: 'sm_btn_out', + btn_back: 'sm_sub_back', input: 'sm_input', input_area: 'sm_input_area', - clear_btn : 'sm_clear_btn', - menu_divider : 'sm_divider', - menu_regular : 'sm_regular', - menu_arrow : 'sm_arrow', - menu_arraw_have_title : 'sm_have_title', - menu_disabled : 'sm_disabled', - menu_header : 'sm_header', + clear_btn: 'sm_clear_btn', + + menu_root: 'sm_menu_root', + menu_divider: 'sm_divider', + menu_regular: 'sm_regular', + menu_arrow: 'sm_arrow', + menu_arrow_have_title : 'sm_have_title', + menu_disabled: 'sm_disabled', + menu_header: 'sm_header', + menu_caret: 'sm_caret', + menu_sub_menu: 'sm_sub_menu', + menu_sub_item: 'sm_sub_item', + menu_sub_header: 'sm_sub_header', + + direction_top : 'sm_arrow_top', direction_bottom : 'sm_arrow_bottom' }; this.css_class = css_class; + this.template = { + msg :{ + maxSelectLimit: 'max_selected_limit' + } + }; }; /** - * 插件内部属性设置默认值 + * Internal variable initial */ SelectMenu.prototype.setProp = function() { this.prop = { - //插件选中的值 + //selected menu item keys values : [], - //数据展示的数据对象 data : undefined, - //多分组数据的当前分组的下标 + //multiple group data current data index data_index : 0, - //当前页 - current_page: 1, - //总页数 - max_page: 1, - //使用键盘进行选择 key_select: false, - //上一个选择的项目值 prev_value: '', - //选中项目的文本内容 selected_text : '', - //上一次键盘输入的时间 last_input_time: undefined, - //数据类型 + //menu data type data_type : SelectMenu.dataTypeList, - //id前缀 + //id prefix menu_tab_id_prefix : 'selectmenu_tab_', + menu_code_prefix: 'selectmenu_', //mouse x point x : undefined, //mouse y point @@ -445,7 +454,7 @@ }; /** - * 数据源格式检查 + * Data source type check */ SelectMenu.prototype.checkDataType = function(d){ var self = this,p = this.option; @@ -461,65 +470,59 @@ }; /** - * 插件HTML结构生成 + * Menu structure build */ SelectMenu.prototype.setElem = function() { - var self = this,p = this.option; - // 1. 生成、替换DOM对象 - var elem = {};//本体 + var self = this, p = this.option, css = this.css_class; + // 1. build dom element + var elem = {}; - elem.container = p.embed ? $(self.target).addClass(this.css_class.container_embed) : $('
'); - $(elem.container).addClass(this.css_class.container).addClass(this.css_class.direction_bottom); + elem.container = p.embed ? $(self.target).addClass(css.container_embed) : $('
'); + elem.container.addClass(css.container).addClass(css.direction_bottom); if(p.title){ - elem.header = $('
').addClass(this.css_class.header); - $(elem.header).append('

' + p.title + '

'); + elem.header = $('
').addClass(css.header); + elem.header.append('

' + p.title + '

'); if(p.multiple){ elem.selectAllButton = $('') .attr('title',this.message.select_all_btn) - .addClass(this.css_class.btn_selectall); + .addClass(css.btn_selectall); elem.removeAllButton = $('') .attr('title',this.message.remove_all_btn) - .addClass(this.css_class.btn_removeall); - $(elem.header).append(elem.selectAllButton); - $(elem.header).append(elem.removeAllButton); + .addClass(css.btn_removeall); + elem.header.append(elem.selectAllButton); + elem.header.append(elem.removeAllButton); } if(!p.embed){ elem.closeButton = $('') .attr('title',self.message.close_btn) - .addClass(this.css_class.btn_close); - $(elem.header).append(elem.closeButton); + .addClass(css.btn_close); + elem.header.append(elem.closeButton); } } - elem.inputArea = $('
').addClass(this.css_class.input_area); - elem.input = $('').addClass(this.css_class.input); - - //单选模式下清除的按钮X - //elem.clear_btn = $('
').append('×').addClass(this.css_class.clear_btn).attr('title','清除内容'); + elem.inputArea = $('
').addClass(css.input_area); + elem.input = $('').addClass(css.input); - //结果集列表 - elem.resultArea = $('
').addClass(this.css_class.re_area); - elem.resultTabs = $('
').addClass(this.css_class.re_tabs); - elem.results = $('