").append( jQuery.parseHTML( responseText ) ).find( selector ) :
+
+ // Otherwise use the full result
+ responseText );
+
+ }).complete( callback && function( jqXHR, status ) {
+ self.each( callback, response || [ jqXHR.responseText, status, jqXHR ] );
+ });
+ }
+
+ return this;
+};
+
+
+
+
+// Attach a bunch of functions for handling common AJAX events
+jQuery.each( [ "ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend" ], function( i, type ) {
+ jQuery.fn[ type ] = function( fn ) {
+ return this.on( type, fn );
+ };
+});
+
+
+
+
+jQuery.expr.filters.animated = function( elem ) {
+ return jQuery.grep(jQuery.timers, function( fn ) {
+ return elem === fn.elem;
+ }).length;
+};
+
+
+
+
+
+var docElem = window.document.documentElement;
+
+/**
+ * Gets a window from an element
+ */
+function getWindow( elem ) {
+ return jQuery.isWindow( elem ) ?
+ elem :
+ elem.nodeType === 9 ?
+ elem.defaultView || elem.parentWindow :
+ false;
+}
+
+jQuery.offset = {
+ setOffset: function( elem, options, i ) {
+ var curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,
+ position = jQuery.css( elem, "position" ),
+ curElem = jQuery( elem ),
+ props = {};
+
+ // set position first, in-case top/left are set even on static elem
+ if ( position === "static" ) {
+ elem.style.position = "relative";
+ }
+
+ curOffset = curElem.offset();
+ curCSSTop = jQuery.css( elem, "top" );
+ curCSSLeft = jQuery.css( elem, "left" );
+ calculatePosition = ( position === "absolute" || position === "fixed" ) &&
+ jQuery.inArray("auto", [ curCSSTop, curCSSLeft ] ) > -1;
+
+ // need to be able to calculate position if either top or left is auto and position is either absolute or fixed
+ if ( calculatePosition ) {
+ curPosition = curElem.position();
+ curTop = curPosition.top;
+ curLeft = curPosition.left;
+ } else {
+ curTop = parseFloat( curCSSTop ) || 0;
+ curLeft = parseFloat( curCSSLeft ) || 0;
+ }
+
+ if ( jQuery.isFunction( options ) ) {
+ options = options.call( elem, i, curOffset );
+ }
+
+ if ( options.top != null ) {
+ props.top = ( options.top - curOffset.top ) + curTop;
+ }
+ if ( options.left != null ) {
+ props.left = ( options.left - curOffset.left ) + curLeft;
+ }
+
+ if ( "using" in options ) {
+ options.using.call( elem, props );
+ } else {
+ curElem.css( props );
+ }
+ }
+};
+
+jQuery.fn.extend({
+ offset: function( options ) {
+ if ( arguments.length ) {
+ return options === undefined ?
+ this :
+ this.each(function( i ) {
+ jQuery.offset.setOffset( this, options, i );
+ });
+ }
+
+ var docElem, win,
+ box = { top: 0, left: 0 },
+ elem = this[ 0 ],
+ doc = elem && elem.ownerDocument;
+
+ if ( !doc ) {
+ return;
+ }
+
+ docElem = doc.documentElement;
+
+ // Make sure it's not a disconnected DOM node
+ if ( !jQuery.contains( docElem, elem ) ) {
+ return box;
+ }
+
+ // If we don't have gBCR, just use 0,0 rather than error
+ // BlackBerry 5, iOS 3 (original iPhone)
+ if ( typeof elem.getBoundingClientRect !== strundefined ) {
+ box = elem.getBoundingClientRect();
+ }
+ win = getWindow( doc );
+ return {
+ top: box.top + ( win.pageYOffset || docElem.scrollTop ) - ( docElem.clientTop || 0 ),
+ left: box.left + ( win.pageXOffset || docElem.scrollLeft ) - ( docElem.clientLeft || 0 )
+ };
+ },
+
+ position: function() {
+ if ( !this[ 0 ] ) {
+ return;
+ }
+
+ var offsetParent, offset,
+ parentOffset = { top: 0, left: 0 },
+ elem = this[ 0 ];
+
+ // fixed elements are offset from window (parentOffset = {top:0, left: 0}, because it is its only offset parent
+ if ( jQuery.css( elem, "position" ) === "fixed" ) {
+ // we assume that getBoundingClientRect is available when computed position is fixed
+ offset = elem.getBoundingClientRect();
+ } else {
+ // Get *real* offsetParent
+ offsetParent = this.offsetParent();
+
+ // Get correct offsets
+ offset = this.offset();
+ if ( !jQuery.nodeName( offsetParent[ 0 ], "html" ) ) {
+ parentOffset = offsetParent.offset();
+ }
+
+ // Add offsetParent borders
+ parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true );
+ parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true );
+ }
+
+ // Subtract parent offsets and element margins
+ // note: when an element has margin: auto the offsetLeft and marginLeft
+ // are the same in Safari causing offset.left to incorrectly be 0
+ return {
+ top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
+ left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true)
+ };
+ },
+
+ offsetParent: function() {
+ return this.map(function() {
+ var offsetParent = this.offsetParent || docElem;
+
+ while ( offsetParent && ( !jQuery.nodeName( offsetParent, "html" ) && jQuery.css( offsetParent, "position" ) === "static" ) ) {
+ offsetParent = offsetParent.offsetParent;
+ }
+ return offsetParent || docElem;
+ });
+ }
+});
+
+// Create scrollLeft and scrollTop methods
+jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
+ var top = /Y/.test( prop );
+
+ jQuery.fn[ method ] = function( val ) {
+ return access( this, function( elem, method, val ) {
+ var win = getWindow( elem );
+
+ if ( val === undefined ) {
+ return win ? (prop in win) ? win[ prop ] :
+ win.document.documentElement[ method ] :
+ elem[ method ];
+ }
+
+ if ( win ) {
+ win.scrollTo(
+ !top ? val : jQuery( win ).scrollLeft(),
+ top ? val : jQuery( win ).scrollTop()
+ );
+
+ } else {
+ elem[ method ] = val;
+ }
+ }, method, val, arguments.length, null );
+ };
+});
+
+// Add the top/left cssHooks using jQuery.fn.position
+// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
+// getComputedStyle returns percent when specified for top/left/bottom/right
+// rather than make the css module depend on the offset module, we just check for it here
+jQuery.each( [ "top", "left" ], function( i, prop ) {
+ jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
+ function( elem, computed ) {
+ if ( computed ) {
+ computed = curCSS( elem, prop );
+ // if curCSS returns percentage, fallback to offset
+ return rnumnonpx.test( computed ) ?
+ jQuery( elem ).position()[ prop ] + "px" :
+ computed;
+ }
+ }
+ );
+});
+
+
+// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
+jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
+ jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name }, function( defaultExtra, funcName ) {
+ // margin is only for outerHeight, outerWidth
+ jQuery.fn[ funcName ] = function( margin, value ) {
+ var chainable = arguments.length && ( defaultExtra || typeof margin !== "boolean" ),
+ extra = defaultExtra || ( margin === true || value === true ? "margin" : "border" );
+
+ return access( this, function( elem, type, value ) {
+ var doc;
+
+ if ( jQuery.isWindow( elem ) ) {
+ // As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there
+ // isn't a whole lot we can do. See pull request at this URL for discussion:
+ // https://github.com/jquery/jquery/pull/764
+ return elem.document.documentElement[ "client" + name ];
+ }
+
+ // Get document width or height
+ if ( elem.nodeType === 9 ) {
+ doc = elem.documentElement;
+
+ // Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height], whichever is greatest
+ // unfortunately, this causes bug #3838 in IE6/8 only, but there is currently no good, small way to fix it.
+ return Math.max(
+ elem.body[ "scroll" + name ], doc[ "scroll" + name ],
+ elem.body[ "offset" + name ], doc[ "offset" + name ],
+ doc[ "client" + name ]
+ );
+ }
+
+ return value === undefined ?
+ // Get width or height on the element, requesting but not forcing parseFloat
+ jQuery.css( elem, type, extra ) :
+
+ // Set width or height on the element
+ jQuery.style( elem, type, value, extra );
+ }, type, chainable ? margin : undefined, chainable, null );
+ };
+ });
+});
+
+
+// The number of elements contained in the matched element set
+jQuery.fn.size = function() {
+ return this.length;
+};
+
+jQuery.fn.andSelf = jQuery.fn.addBack;
+
+
+
+
+// Register as a named AMD module, since jQuery can be concatenated with other
+// files that may use define, but not via a proper concatenation script that
+// understands anonymous AMD modules. A named AMD is safest and most robust
+// way to register. Lowercase jquery is used because AMD module names are
+// derived from file names, and jQuery is normally delivered in a lowercase
+// file name. Do this after creating the global so that if an AMD module wants
+// to call noConflict to hide this version of jQuery, it will work.
+
+// Note that for maximum portability, libraries that are not jQuery should
+// declare themselves as anonymous modules, and avoid setting a global if an
+// AMD loader is present. jQuery is a special case. For more information, see
+// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon
+
+if ( typeof define === "function" && define.amd ) {
+ define( "jquery", [], function() {
+ return jQuery;
+ });
+}
+
+
+
+
+var
+ // Map over jQuery in case of overwrite
+ _jQuery = window.jQuery,
+
+ // Map over the $ in case of overwrite
+ _$ = window.$;
+
+jQuery.noConflict = function( deep ) {
+ if ( window.$ === jQuery ) {
+ window.$ = _$;
+ }
+
+ if ( deep && window.jQuery === jQuery ) {
+ window.jQuery = _jQuery;
+ }
+
+ return jQuery;
+};
+
+// Expose jQuery and $ identifiers, even in
+// AMD (#7102#comment:10, https://github.com/jquery/jquery/pull/557)
+// and CommonJS for browser emulators (#13566)
+if ( typeof noGlobal === strundefined ) {
+ window.jQuery = window.$ = jQuery;
+}
+
+
+
+
+return jQuery;
+
+}));
diff --git a/labs/1414080902117/main.jsp b/labs/1414080902117/main.jsp
deleted file mode 100644
index a0fd7eee..00000000
--- a/labs/1414080902117/main.jsp
+++ /dev/null
@@ -1,459 +0,0 @@
-<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*,java.util.*,JDBC_package.JDBC_package" errorPage="" %>
-
-
-
-
-
首页
-
-
-
-
-
-
-
-
-
-
-
-
- |
-
-
-
-
-
-
- |
-
-
- 热门编程工具 |
-
-
-
-
- |
-
-
-
-
- |
-
-
-
-
-
-
-
-<%
-/*常用的事件:
-onmouseover
-onmouseout
-onmousemove
-onclick
-onchange
-onfocus
-*/
-%>
\ No newline at end of file
diff --git a/labs/1414080902117/src/Bean/Bean5.java b/labs/1414080902117/src/Bean/Bean5.java
deleted file mode 100644
index 629888d5..00000000
--- a/labs/1414080902117/src/Bean/Bean5.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package Bean;
-
-import java.util.Date;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-
-public class Bean5 {
- private String date_time;
- private String week;
- private Calendar calendar= Calendar.getInstance();
- public String getdatetime()
- {
- Date currDate =Calendar.getInstance().getTime();
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日hh点mm分ss秒");
- date_time = sdf.format(currDate);
- return date_time;
- }
- public String getweek()
- {
- String[] weeks = {"星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
- int index = calendar.get(Calendar.DAY_OF_WEEK);
- week = weeks[index-1];
- return week;
- }
-}
diff --git a/labs/1414080902117/src/Bean/JDBC.java b/labs/1414080902117/src/Bean/JDBC.java
new file mode 100644
index 00000000..46e2a1b5
--- /dev/null
+++ b/labs/1414080902117/src/Bean/JDBC.java
@@ -0,0 +1,83 @@
+package Bean;
+
+import java.sql.*;
+import java.util.*;
+
+public class JDBC {
+ private String url;
+ private Connection conn = null;
+ private ResultSet Result;
+ private int result;
+ private String query;
+ private String update;
+ private Statement stmt;
+ private String account;
+ private String password;
+ private String name;
+
+ public String getUrl() {
+ url = "jdbc:mysql://localhost:3306/test?user=root&password=&userUnicode=true&charterEncoding=UTF-8";
+ return url;
+ }
+
+ public Connection getConn() throws SQLException {
+ new com.mysql.jdbc.Driver();
+ conn = DriverManager.getConnection(url);
+ return conn;
+ }
+
+ public void getResult() throws SQLException {
+ while(Result.next())
+ {
+ account = Result.getString("account");
+ password = Result.getString("password");
+ name = Result.getString("name");
+ }
+ }
+
+ public int getresult() {
+ return result;
+ }
+
+ public void setstmt() throws SQLException
+ {
+ stmt = conn.createStatement();
+ }
+ public void setQuery(String account,String password)
+ {
+ query = String.format("select * from user where account ='%s' or name = '%s'",account,name);
+ }
+ public void getQuery() throws SQLException
+ {
+ Result = stmt.executeQuery(query);
+ }
+ public String getAccount()
+ {
+ return account;
+ }
+ public String getPassword()
+ {
+ return password;
+ }
+ public String getName()
+ {
+ return name;
+ }
+
+ public void getUpdate() throws SQLException
+ {
+ result = stmt.executeUpdate(update);
+ }
+ public void Query(String sql) throws SQLException
+ {
+ Result = stmt.executeQuery(sql);
+ }
+ public void Update(String sql) throws SQLException
+ {
+ result = stmt.executeUpdate(sql);
+ }
+ public void getclose() throws SQLException
+ {
+ conn.close();
+ }
+}
diff --git a/labs/1414080902117/src/Bean/checkBean.java b/labs/1414080902117/src/Bean/checkBean.java
new file mode 100644
index 00000000..b895e1e5
--- /dev/null
+++ b/labs/1414080902117/src/Bean/checkBean.java
@@ -0,0 +1,60 @@
+package Bean;
+
+
+
+import Bean.JDBC;
+import java.sql.*;
+import java.util.*;
+
+public class checkBean {
+ private String check_acc;
+ private String check_name;
+ private String sql;
+ private boolean exit;
+ private ResultSet result;
+
+ public void setCheck_acc(String account)
+ {
+ check_acc = account;
+ sql = String .format("select * from user where account='%s'",check_acc);
+ }
+ public void setCheck_name(String name)
+ {
+ check_name = name;
+ sql = String.format("select * from user where name='%s'",check_name);
+ }
+
+ public String getCheck()
+ {
+ return sql;
+ }
+ public void Check()
+ {
+ JDBC jdbc = new JDBC();
+ jdbc.getUrl();
+ try
+ {
+ jdbc.getConn();
+ jdbc.setstmt();
+ jdbc.Query(sql);
+ jdbc.getResult();
+ if(jdbc.getAccount() != null || jdbc.getName() != null)
+ {
+ exit = true;
+ }
+ else
+ {
+ exit = false;
+ }
+ jdbc.getclose();
+ }
+ catch(Exception e)
+ {
+
+ }
+ }
+ public boolean getExit()
+ {
+ return exit;
+ }
+}
diff --git a/labs/1414080902117/src/filter/Encoding.java b/labs/1414080902117/src/filter/Encoding.java
new file mode 100644
index 00000000..57f14f4e
--- /dev/null
+++ b/labs/1414080902117/src/filter/Encoding.java
@@ -0,0 +1,46 @@
+package filter;
+
+import java.io.IOException;
+import javax.servlet.Filter;
+import javax.servlet.FilterChain;
+import javax.servlet.FilterConfig;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+
+/**
+ * Servlet Filter implementation class Encoding
+ */
+public class Encoding implements Filter {
+
+ /**
+ * Default constructor.
+ */
+ public Encoding() {
+ // TODO Auto-generated constructor stub
+ }
+
+ /**
+ * @see Filter#destroy()
+ */
+ public void destroy() {
+ // TODO Auto-generated method stub
+ }
+
+ /**
+ * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain)
+ */
+ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
+ request.setCharacterEncoding("UTF-8");
+ response.setCharacterEncoding("UTF-8");
+ chain.doFilter(request, response);
+ }
+
+ /**
+ * @see Filter#init(FilterConfig)
+ */
+ public void init(FilterConfig fConfig) throws ServletException {
+ // TODO Auto-generated method stub
+ }
+
+}
diff --git a/labs/1414080902117/src/servlet/check.java b/labs/1414080902117/src/servlet/check.java
new file mode 100644
index 00000000..18fcba71
--- /dev/null
+++ b/labs/1414080902117/src/servlet/check.java
@@ -0,0 +1,102 @@
+package servlet;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import Bean.JDBC;
+import Bean.checkBean;
+
+public class check extends HttpServlet {
+
+ /**
+ * Constructor of the object.
+ */
+ public check() {
+ super();
+ }
+
+ /**
+ * Destruction of the servlet.
+ */
+ public void destroy() {
+ super.destroy(); // Just puts "destroy" string in log
+ // Put your code here
+ }
+
+
+ public void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ }
+
+ /**
+ * The doPost method of the servlet.
+ *
+ * This method is called when a form has its tag value method equals to post.
+ *
+ * @param request the request send by the client to the server
+ * @param response the response send by the server to the client
+ * @throws ServletException if an error occurred
+ * @throws IOException if an error occurred
+ */
+ public void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ response.setContentType("text/html");
+ request.setCharacterEncoding("UTF-8");
+ response.setCharacterEncoding("UTF-8");
+ PrintWriter out = response.getWriter();
+ String account = request.getParameter("account");
+ String password = request.getParameter("password");
+ String name = request.getParameter("name");
+
+ checkBean check = new checkBean();
+ if(account != null)
+ {
+ account = new String(account.getBytes("ISO-8859-1"),"utf-8");
+
+ check.setCheck_acc(account);
+ check.Check();
+ if(check.getExit() == true)
+ {
+ out.append("{\"account\":\"
账号已经被其他人使用\"}");
+ }
+ else
+ {
+ //out.append("{\"account\":\"账号未被使用,可以注册\"}");
+ out.append("{\"account\":\"\"}");
+ }
+ }
+ if(name != null)
+ {
+ name = new String(name.getBytes("ISO-8859-1"),"utf-8");
+ check.setCheck_name(name);
+ check.Check();
+ if(check.getExit() == true)
+ {
+ out.append("{\"name\":\"
该昵称已经被其他人使用\"}");
+ }
+ else
+ {
+ //out.append("{\"name\":\"该昵称未被使用,可以进行注册\"}");
+ out.append("{\"name\":\"\"}");
+ }
+ }
+ out.flush();
+ out.close();
+ }
+
+ /**
+ * Initialization of the servlet.
+ *
+ * @throws ServletException if an error occurs
+ */
+ public void init() throws ServletException {
+ // Put your code here
+ }
+
+}
diff --git a/labs/1414080902117/src/servlet/servlet.java b/labs/1414080902117/src/servlet/servlet.java
new file mode 100644
index 00000000..6c48824c
--- /dev/null
+++ b/labs/1414080902117/src/servlet/servlet.java
@@ -0,0 +1,80 @@
+package servlet;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import Bean.JDBC;
+
+public class servlet extends HttpServlet {
+
+ /**
+ * Constructor of the object.
+ */
+ public servlet() {
+ super();
+ }
+
+ /**
+ * Destruction of the servlet.
+ */
+ public void destroy() {
+ super.destroy(); // Just puts "destroy" string in log
+ // Put your code here
+ }
+
+ /**
+ * The doGet method of the servlet.
+ *
+ * This method is called when a form has its tag value method equals to get.
+ *
+ * @param request the request send by the client to the server
+ * @param response the response send by the server to the client
+ * @throws ServletException if an error occurred
+ * @throws IOException if an error occurred
+ */
+ public void doGet(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+
+ }
+
+
+ public void doPost(HttpServletRequest request, HttpServletResponse response)
+ throws ServletException, IOException {
+
+ response.setContentType("text/html");
+ request.setCharacterEncoding("UTF-8");
+ response.setCharacterEncoding("UTF-8");
+ PrintWriter out = response.getWriter();
+
+ String name = request.getParameter("name");
+ String account = request.getParameter("account");
+ String password = request.getParameter("password");
+ String sql = String.format("insert into user(account,password,name) values ('%s','%s','%s')",account,password,name);
+ JDBC jdbc = new JDBC();
+ jdbc.getUrl();
+ try{
+ sql = new String(sql.getBytes("ISO-8859-1"),"utf-8");
+ jdbc.getConn();
+ jdbc.setstmt();
+ jdbc.Update(sql);
+ jdbc.getUpdate();
+ System.out.println("Yes");
+ }
+ catch(Exception e){
+ out.append("{\"result\":\"连接失败\"}");
+ }
+ out.flush();
+ out.close();
+ }
+
+
+ public void init() throws ServletException {
+ // Put your code here
+ }
+
+}
diff --git a/labs/1414080902117/success.jsp b/labs/1414080902117/success.jsp
new file mode 100644
index 00000000..7c28924a
--- /dev/null
+++ b/labs/1414080902117/success.jsp
@@ -0,0 +1,30 @@
+<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
+<%
+String path = request.getContextPath();
+String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
+%>
+
+
+
+
+
+
+
注册成功界面
+
+
+
+
+
+
+
+
+
+
+
+
+ 注册成功
+
+
+
diff --git a/labs/1414080902117/time.jsp b/labs/1414080902117/time.jsp
deleted file mode 100644
index 1820bd23..00000000
--- a/labs/1414080902117/time.jsp
+++ /dev/null
@@ -1,66 +0,0 @@
-<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
-<%
-String path = request.getContextPath();
-String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
-%>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
-
-
-
-
-
-
-
-
时间显示
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 当前日期时间为:
-
-
-
- 凌晨
-
-
- 早上
-
-
- 上午
-
-
- 中午
-
-
- 下午
-
-
- 晚上
-
-
- ${now.hours}时${now.minutes}分
- |
-
-
-
-
diff --git "a/labs/1414080902117/\346\226\260\347\224\250\346\210\267\346\210\226\346\230\265\347\247\260\344\270\215\345\255\230\345\234\250\346\227\266.png" "b/labs/1414080902117/\346\226\260\347\224\250\346\210\267\346\210\226\346\230\265\347\247\260\344\270\215\345\255\230\345\234\250\346\227\266.png"
new file mode 100644
index 00000000..64f1f569
Binary files /dev/null and "b/labs/1414080902117/\346\226\260\347\224\250\346\210\267\346\210\226\346\230\265\347\247\260\344\270\215\345\255\230\345\234\250\346\227\266.png" differ
diff --git "a/labs/1414080902117/\346\226\260\347\224\250\346\210\267\346\210\226\346\230\265\347\247\260\345\255\230\345\234\250\346\227\266.png" "b/labs/1414080902117/\346\226\260\347\224\250\346\210\267\346\210\226\346\230\265\347\247\260\345\255\230\345\234\250\346\227\266.png"
new file mode 100644
index 00000000..ea807753
Binary files /dev/null and "b/labs/1414080902117/\346\226\260\347\224\250\346\210\267\346\210\226\346\230\265\347\247\260\345\255\230\345\234\250\346\227\266.png" differ