Compare commits
No commits in common. "master" and "version_forge" have entirely different histories.
master
...
version_fo
19
LICENSE
|
@ -1,19 +0,0 @@
|
|||
MIT License Copyright (c) <year> <copyright holders>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is furnished
|
||||
to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice (including the next
|
||||
paragraph) shall be included in all copies or substantial portions of the
|
||||
Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
|
||||
OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
|
||||
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@ -1,6 +0,0 @@
|
|||
## Trustie 3.0 前端编译好的文件
|
||||
|
||||
说明:
|
||||
1. 这个是前端编译后的文件
|
||||
2. 前端更改源代码后,请重新打包,并将打包好的文件提交到该仓库
|
||||
3. 服务端部署的时候会自动更新此仓库的代码
|
|
@ -0,0 +1,34 @@
|
|||
|
||||
新版tpi改动的文件:
|
||||
Index.js
|
||||
contex/TPIContextProvider.js
|
||||
page/main/LeftViewContainer.js
|
||||
taskList/TaskList.js
|
||||
TPMIndexHOC.js
|
||||
App.js
|
||||
CodeRepositoryViewContainer.js
|
||||
|
||||
Index.js
|
||||
choose={context.chooses}
|
||||
|
||||
|
||||
TPIContextProvider.js
|
||||
|
||||
LeftViewContainer.js
|
||||
|
||||
TaskList.js
|
||||
|
||||
TPMIndexHOC.js
|
||||
|
||||
MainContentContainer
|
||||
新:rep_content返回值多了一层 {content: '...'}
|
||||
|
||||
|
||||
|
||||
|
||||
TODO
|
||||
待同步
|
||||
1、timer图标样式更换
|
||||
index.html
|
||||
WebSSHTimer.css
|
||||
WebSSHTimer.js
|
|
@ -1,374 +0,0 @@
|
|||
{
|
||||
"./static/js/0.b4e2ef10.chunk.js": "./static/js/0.b4e2ef10.chunk.js",
|
||||
"./static/js/1.68949f00.chunk.js": "./static/js/1.68949f00.chunk.js",
|
||||
"./static/js/10.1be71b42.chunk.js": "./static/js/10.1be71b42.chunk.js",
|
||||
"./static/js/100.41f2a409.chunk.js": "./static/js/100.41f2a409.chunk.js",
|
||||
"./static/js/101.8c9ebcb9.chunk.js": "./static/js/101.8c9ebcb9.chunk.js",
|
||||
"./static/js/102.ae5e7930.chunk.js": "./static/js/102.ae5e7930.chunk.js",
|
||||
"./static/js/103.71e1260c.chunk.js": "./static/js/103.71e1260c.chunk.js",
|
||||
"./static/js/104.6010b0d8.chunk.js": "./static/js/104.6010b0d8.chunk.js",
|
||||
"./static/js/105.d97473e3.chunk.js": "./static/js/105.d97473e3.chunk.js",
|
||||
"./static/js/106.a18d9295.chunk.js": "./static/js/106.a18d9295.chunk.js",
|
||||
"./static/js/107.e4fa8da8.chunk.js": "./static/js/107.e4fa8da8.chunk.js",
|
||||
"./static/js/108.cb5fa18c.chunk.js": "./static/js/108.cb5fa18c.chunk.js",
|
||||
"./static/js/109.728021f4.chunk.js": "./static/js/109.728021f4.chunk.js",
|
||||
"./static/js/11.1e6e3f2f.chunk.js": "./static/js/11.1e6e3f2f.chunk.js",
|
||||
"./static/js/110.4d60f060.chunk.js": "./static/js/110.4d60f060.chunk.js",
|
||||
"./static/js/111.00847641.chunk.js": "./static/js/111.00847641.chunk.js",
|
||||
"./static/js/112.dff32e36.chunk.js": "./static/js/112.dff32e36.chunk.js",
|
||||
"./static/js/113.9321d650.chunk.js": "./static/js/113.9321d650.chunk.js",
|
||||
"./static/js/114.ab44c57c.chunk.js": "./static/js/114.ab44c57c.chunk.js",
|
||||
"./static/js/115.16bc2b0d.chunk.js": "./static/js/115.16bc2b0d.chunk.js",
|
||||
"./static/js/116.acb34db4.chunk.js": "./static/js/116.acb34db4.chunk.js",
|
||||
"./static/js/117.c12032ae.chunk.js": "./static/js/117.c12032ae.chunk.js",
|
||||
"./static/js/118.06ac0c97.chunk.js": "./static/js/118.06ac0c97.chunk.js",
|
||||
"./static/js/119.09fe7ab0.chunk.js": "./static/js/119.09fe7ab0.chunk.js",
|
||||
"./static/js/12.c388554b.chunk.js": "./static/js/12.c388554b.chunk.js",
|
||||
"./static/js/120.712692c0.chunk.js": "./static/js/120.712692c0.chunk.js",
|
||||
"./static/js/121.5542a234.chunk.js": "./static/js/121.5542a234.chunk.js",
|
||||
"./static/js/122.5434414a.chunk.js": "./static/js/122.5434414a.chunk.js",
|
||||
"./static/js/123.56b5aa50.chunk.js": "./static/js/123.56b5aa50.chunk.js",
|
||||
"./static/js/124.4fa3c025.chunk.js": "./static/js/124.4fa3c025.chunk.js",
|
||||
"./static/js/125.e90a0e54.chunk.js": "./static/js/125.e90a0e54.chunk.js",
|
||||
"./static/js/126.6ac902e8.chunk.js": "./static/js/126.6ac902e8.chunk.js",
|
||||
"./static/js/127.382109ca.chunk.js": "./static/js/127.382109ca.chunk.js",
|
||||
"./static/js/128.f5cab6ce.chunk.js": "./static/js/128.f5cab6ce.chunk.js",
|
||||
"./static/js/129.a97defb5.chunk.js": "./static/js/129.a97defb5.chunk.js",
|
||||
"./static/js/13.5f9dd754.chunk.js": "./static/js/13.5f9dd754.chunk.js",
|
||||
"./static/js/130.dc6cfef3.chunk.js": "./static/js/130.dc6cfef3.chunk.js",
|
||||
"./static/js/131.e36c51f6.chunk.js": "./static/js/131.e36c51f6.chunk.js",
|
||||
"./static/js/132.e86e6598.chunk.js": "./static/js/132.e86e6598.chunk.js",
|
||||
"./static/js/133.cd5b0e41.chunk.js": "./static/js/133.cd5b0e41.chunk.js",
|
||||
"./static/js/134.a45157f4.chunk.js": "./static/js/134.a45157f4.chunk.js",
|
||||
"./static/js/135.219cca2d.chunk.js": "./static/js/135.219cca2d.chunk.js",
|
||||
"./static/js/136.792455ab.chunk.js": "./static/js/136.792455ab.chunk.js",
|
||||
"./static/js/137.d98f1f26.chunk.js": "./static/js/137.d98f1f26.chunk.js",
|
||||
"./static/js/138.537d528f.chunk.js": "./static/js/138.537d528f.chunk.js",
|
||||
"./static/js/139.f968f8da.chunk.js": "./static/js/139.f968f8da.chunk.js",
|
||||
"./static/js/14.ae36f994.chunk.js": "./static/js/14.ae36f994.chunk.js",
|
||||
"./static/js/140.d2937c5d.chunk.js": "./static/js/140.d2937c5d.chunk.js",
|
||||
"./static/js/141.41414563.chunk.js": "./static/js/141.41414563.chunk.js",
|
||||
"./static/js/142.085bcaac.chunk.js": "./static/js/142.085bcaac.chunk.js",
|
||||
"./static/js/143.7c7bdefd.chunk.js": "./static/js/143.7c7bdefd.chunk.js",
|
||||
"./static/js/144.2734eeac.chunk.js": "./static/js/144.2734eeac.chunk.js",
|
||||
"./static/js/145.0567a7a7.chunk.js": "./static/js/145.0567a7a7.chunk.js",
|
||||
"./static/js/146.6f118df0.chunk.js": "./static/js/146.6f118df0.chunk.js",
|
||||
"./static/js/147.8ad6802f.chunk.js": "./static/js/147.8ad6802f.chunk.js",
|
||||
"./static/js/148.1509b466.chunk.js": "./static/js/148.1509b466.chunk.js",
|
||||
"./static/js/149.5a32ad42.chunk.js": "./static/js/149.5a32ad42.chunk.js",
|
||||
"./static/js/15.63726bf5.chunk.js": "./static/js/15.63726bf5.chunk.js",
|
||||
"./static/js/150.67b85412.chunk.js": "./static/js/150.67b85412.chunk.js",
|
||||
"./static/js/151.80c1ff31.chunk.js": "./static/js/151.80c1ff31.chunk.js",
|
||||
"./static/js/152.a8ce322f.chunk.js": "./static/js/152.a8ce322f.chunk.js",
|
||||
"./static/js/153.eb7d58a7.chunk.js": "./static/js/153.eb7d58a7.chunk.js",
|
||||
"./static/js/154.4378c4dc.chunk.js": "./static/js/154.4378c4dc.chunk.js",
|
||||
"./static/js/155.fd685811.chunk.js": "./static/js/155.fd685811.chunk.js",
|
||||
"./static/js/156.2b59a7a3.chunk.js": "./static/js/156.2b59a7a3.chunk.js",
|
||||
"./static/js/157.2d1b2b40.chunk.js": "./static/js/157.2d1b2b40.chunk.js",
|
||||
"./static/js/158.809809fb.chunk.js": "./static/js/158.809809fb.chunk.js",
|
||||
"./static/js/159.6b94727b.chunk.js": "./static/js/159.6b94727b.chunk.js",
|
||||
"./static/js/16.cd292edc.chunk.js": "./static/js/16.cd292edc.chunk.js",
|
||||
"./static/js/160.5c01b4fe.chunk.js": "./static/js/160.5c01b4fe.chunk.js",
|
||||
"./static/js/161.2e3c0cf9.chunk.js": "./static/js/161.2e3c0cf9.chunk.js",
|
||||
"./static/js/162.87f4e888.chunk.js": "./static/js/162.87f4e888.chunk.js",
|
||||
"./static/js/163.0a540ffa.chunk.js": "./static/js/163.0a540ffa.chunk.js",
|
||||
"./static/js/164.b22433aa.chunk.js": "./static/js/164.b22433aa.chunk.js",
|
||||
"./static/js/165.2670f91b.chunk.js": "./static/js/165.2670f91b.chunk.js",
|
||||
"./static/js/166.ba688344.chunk.js": "./static/js/166.ba688344.chunk.js",
|
||||
"./static/js/167.c636b766.chunk.js": "./static/js/167.c636b766.chunk.js",
|
||||
"./static/js/168.96ee0643.chunk.js": "./static/js/168.96ee0643.chunk.js",
|
||||
"./static/js/169.59c6e595.chunk.js": "./static/js/169.59c6e595.chunk.js",
|
||||
"./static/js/17.9b37107f.chunk.js": "./static/js/17.9b37107f.chunk.js",
|
||||
"./static/js/170.a0e40916.chunk.js": "./static/js/170.a0e40916.chunk.js",
|
||||
"./static/js/171.c5e14617.chunk.js": "./static/js/171.c5e14617.chunk.js",
|
||||
"./static/js/172.aa2c6247.chunk.js": "./static/js/172.aa2c6247.chunk.js",
|
||||
"./static/js/173.f234f2ec.chunk.js": "./static/js/173.f234f2ec.chunk.js",
|
||||
"./static/js/174.23eb263b.chunk.js": "./static/js/174.23eb263b.chunk.js",
|
||||
"./static/js/175.978237cd.chunk.js": "./static/js/175.978237cd.chunk.js",
|
||||
"./static/js/176.6a70c7ca.chunk.js": "./static/js/176.6a70c7ca.chunk.js",
|
||||
"./static/js/177.babfb8a0.chunk.js": "./static/js/177.babfb8a0.chunk.js",
|
||||
"./static/js/178.ca78bfb7.chunk.js": "./static/js/178.ca78bfb7.chunk.js",
|
||||
"./static/js/179.d209043e.chunk.js": "./static/js/179.d209043e.chunk.js",
|
||||
"./static/js/18.59166b96.chunk.js": "./static/js/18.59166b96.chunk.js",
|
||||
"./static/js/180.34e55d7e.chunk.js": "./static/js/180.34e55d7e.chunk.js",
|
||||
"./static/js/181.dd0e9427.chunk.js": "./static/js/181.dd0e9427.chunk.js",
|
||||
"./static/js/182.c133a270.chunk.js": "./static/js/182.c133a270.chunk.js",
|
||||
"./static/js/183.f43e4007.chunk.js": "./static/js/183.f43e4007.chunk.js",
|
||||
"./static/js/184.3abba332.chunk.js": "./static/js/184.3abba332.chunk.js",
|
||||
"./static/js/185.c61d56af.chunk.js": "./static/js/185.c61d56af.chunk.js",
|
||||
"./static/js/186.5ca9f085.chunk.js": "./static/js/186.5ca9f085.chunk.js",
|
||||
"./static/js/187.99889df3.chunk.js": "./static/js/187.99889df3.chunk.js",
|
||||
"./static/js/188.9a0c959d.chunk.js": "./static/js/188.9a0c959d.chunk.js",
|
||||
"./static/js/189.98f6f431.chunk.js": "./static/js/189.98f6f431.chunk.js",
|
||||
"./static/js/19.e9122038.chunk.js": "./static/js/19.e9122038.chunk.js",
|
||||
"./static/js/190.a972b289.chunk.js": "./static/js/190.a972b289.chunk.js",
|
||||
"./static/js/191.91c8d4dd.chunk.js": "./static/js/191.91c8d4dd.chunk.js",
|
||||
"./static/js/192.09b656bb.chunk.js": "./static/js/192.09b656bb.chunk.js",
|
||||
"./static/js/193.2db797e4.chunk.js": "./static/js/193.2db797e4.chunk.js",
|
||||
"./static/js/194.570ec7dc.chunk.js": "./static/js/194.570ec7dc.chunk.js",
|
||||
"./static/js/195.8bafb8cc.chunk.js": "./static/js/195.8bafb8cc.chunk.js",
|
||||
"./static/js/196.ebf790e4.chunk.js": "./static/js/196.ebf790e4.chunk.js",
|
||||
"./static/js/197.e98bbe5e.chunk.js": "./static/js/197.e98bbe5e.chunk.js",
|
||||
"./static/js/198.59eec2cd.chunk.js": "./static/js/198.59eec2cd.chunk.js",
|
||||
"./static/js/199.f7a6cf5d.chunk.js": "./static/js/199.f7a6cf5d.chunk.js",
|
||||
"./static/js/2.2225a575.chunk.js": "./static/js/2.2225a575.chunk.js",
|
||||
"./static/js/20.ea1b83ca.chunk.js": "./static/js/20.ea1b83ca.chunk.js",
|
||||
"./static/js/200.64c98b62.chunk.js": "./static/js/200.64c98b62.chunk.js",
|
||||
"./static/js/201.4dcc10b4.chunk.js": "./static/js/201.4dcc10b4.chunk.js",
|
||||
"./static/js/202.4e8c6091.chunk.js": "./static/js/202.4e8c6091.chunk.js",
|
||||
"./static/js/203.d93d18f4.chunk.js": "./static/js/203.d93d18f4.chunk.js",
|
||||
"./static/js/204.0919cf31.chunk.js": "./static/js/204.0919cf31.chunk.js",
|
||||
"./static/js/205.1d636166.chunk.js": "./static/js/205.1d636166.chunk.js",
|
||||
"./static/js/206.5c119f09.chunk.js": "./static/js/206.5c119f09.chunk.js",
|
||||
"./static/js/207.147ba6db.chunk.js": "./static/js/207.147ba6db.chunk.js",
|
||||
"./static/js/208.25081b68.chunk.js": "./static/js/208.25081b68.chunk.js",
|
||||
"./static/js/209.784c19f9.chunk.js": "./static/js/209.784c19f9.chunk.js",
|
||||
"./static/js/21.66ea1441.chunk.js": "./static/js/21.66ea1441.chunk.js",
|
||||
"./static/js/210.ebc5386b.chunk.js": "./static/js/210.ebc5386b.chunk.js",
|
||||
"./static/js/211.ca304f55.chunk.js": "./static/js/211.ca304f55.chunk.js",
|
||||
"./static/js/212.b5fc6346.chunk.js": "./static/js/212.b5fc6346.chunk.js",
|
||||
"./static/js/213.9e5a8f54.chunk.js": "./static/js/213.9e5a8f54.chunk.js",
|
||||
"./static/js/214.471a7c4b.chunk.js": "./static/js/214.471a7c4b.chunk.js",
|
||||
"./static/js/215.cf8d392b.chunk.js": "./static/js/215.cf8d392b.chunk.js",
|
||||
"./static/js/216.8ce08d4e.chunk.js": "./static/js/216.8ce08d4e.chunk.js",
|
||||
"./static/js/217.03e5cde4.chunk.js": "./static/js/217.03e5cde4.chunk.js",
|
||||
"./static/js/218.c3b4a63d.chunk.js": "./static/js/218.c3b4a63d.chunk.js",
|
||||
"./static/js/219.df96a008.chunk.js": "./static/js/219.df96a008.chunk.js",
|
||||
"./static/js/22.69d33500.chunk.js": "./static/js/22.69d33500.chunk.js",
|
||||
"./static/js/220.83a4b3b7.chunk.js": "./static/js/220.83a4b3b7.chunk.js",
|
||||
"./static/js/221.0e7c7b15.chunk.js": "./static/js/221.0e7c7b15.chunk.js",
|
||||
"./static/js/222.ae23590f.chunk.js": "./static/js/222.ae23590f.chunk.js",
|
||||
"./static/js/223.6e1a4ddc.chunk.js": "./static/js/223.6e1a4ddc.chunk.js",
|
||||
"./static/js/224.66c696e0.chunk.js": "./static/js/224.66c696e0.chunk.js",
|
||||
"./static/js/225.86f6de74.chunk.js": "./static/js/225.86f6de74.chunk.js",
|
||||
"./static/js/226.334eacdf.chunk.js": "./static/js/226.334eacdf.chunk.js",
|
||||
"./static/js/227.fded1c54.chunk.js": "./static/js/227.fded1c54.chunk.js",
|
||||
"./static/js/228.081121a3.chunk.js": "./static/js/228.081121a3.chunk.js",
|
||||
"./static/js/229.fbecdb8f.chunk.js": "./static/js/229.fbecdb8f.chunk.js",
|
||||
"./static/js/23.f3d3a190.chunk.js": "./static/js/23.f3d3a190.chunk.js",
|
||||
"./static/js/230.54214923.chunk.js": "./static/js/230.54214923.chunk.js",
|
||||
"./static/js/231.78c978ac.chunk.js": "./static/js/231.78c978ac.chunk.js",
|
||||
"./static/js/232.65715f0f.chunk.js": "./static/js/232.65715f0f.chunk.js",
|
||||
"./static/js/233.892f3048.chunk.js": "./static/js/233.892f3048.chunk.js",
|
||||
"./static/js/234.9aa182e7.chunk.js": "./static/js/234.9aa182e7.chunk.js",
|
||||
"./static/js/235.d81ddb83.chunk.js": "./static/js/235.d81ddb83.chunk.js",
|
||||
"./static/js/236.69cf4cf6.chunk.js": "./static/js/236.69cf4cf6.chunk.js",
|
||||
"./static/js/237.71ab4f1f.chunk.js": "./static/js/237.71ab4f1f.chunk.js",
|
||||
"./static/js/238.8572225b.chunk.js": "./static/js/238.8572225b.chunk.js",
|
||||
"./static/js/239.fcae5847.chunk.js": "./static/js/239.fcae5847.chunk.js",
|
||||
"./static/js/24.2f9ea72c.chunk.js": "./static/js/24.2f9ea72c.chunk.js",
|
||||
"./static/js/240.e2238e45.chunk.js": "./static/js/240.e2238e45.chunk.js",
|
||||
"./static/js/241.83f72690.chunk.js": "./static/js/241.83f72690.chunk.js",
|
||||
"./static/js/242.d3cb57dd.chunk.js": "./static/js/242.d3cb57dd.chunk.js",
|
||||
"./static/js/243.99af0ef6.chunk.js": "./static/js/243.99af0ef6.chunk.js",
|
||||
"./static/js/244.38603408.chunk.js": "./static/js/244.38603408.chunk.js",
|
||||
"./static/js/245.2d35733a.chunk.js": "./static/js/245.2d35733a.chunk.js",
|
||||
"./static/js/246.e8bec9f4.chunk.js": "./static/js/246.e8bec9f4.chunk.js",
|
||||
"./static/js/247.c9b742e0.chunk.js": "./static/js/247.c9b742e0.chunk.js",
|
||||
"./static/js/248.9f3a7f5e.chunk.js": "./static/js/248.9f3a7f5e.chunk.js",
|
||||
"./static/js/249.a235bfb8.chunk.js": "./static/js/249.a235bfb8.chunk.js",
|
||||
"./static/js/25.3253bb14.chunk.js": "./static/js/25.3253bb14.chunk.js",
|
||||
"./static/js/250.89a0ec2e.chunk.js": "./static/js/250.89a0ec2e.chunk.js",
|
||||
"./static/js/251.f94f4795.chunk.js": "./static/js/251.f94f4795.chunk.js",
|
||||
"./static/js/252.614475d7.chunk.js": "./static/js/252.614475d7.chunk.js",
|
||||
"./static/js/253.16b76954.chunk.js": "./static/js/253.16b76954.chunk.js",
|
||||
"./static/js/254.64d033a9.chunk.js": "./static/js/254.64d033a9.chunk.js",
|
||||
"./static/js/255.d2823d40.chunk.js": "./static/js/255.d2823d40.chunk.js",
|
||||
"./static/js/256.1eca44ce.chunk.js": "./static/js/256.1eca44ce.chunk.js",
|
||||
"./static/js/257.7dd534ae.chunk.js": "./static/js/257.7dd534ae.chunk.js",
|
||||
"./static/js/258.03522780.chunk.js": "./static/js/258.03522780.chunk.js",
|
||||
"./static/js/259.073dfc4a.chunk.js": "./static/js/259.073dfc4a.chunk.js",
|
||||
"./static/js/26.9902b511.chunk.js": "./static/js/26.9902b511.chunk.js",
|
||||
"./static/js/260.35044602.chunk.js": "./static/js/260.35044602.chunk.js",
|
||||
"./static/js/261.617c2c29.chunk.js": "./static/js/261.617c2c29.chunk.js",
|
||||
"./static/js/262.031490eb.chunk.js": "./static/js/262.031490eb.chunk.js",
|
||||
"./static/js/263.0713aea5.chunk.js": "./static/js/263.0713aea5.chunk.js",
|
||||
"./static/js/264.72a7fa9b.chunk.js": "./static/js/264.72a7fa9b.chunk.js",
|
||||
"./static/js/265.8136f3c3.chunk.js": "./static/js/265.8136f3c3.chunk.js",
|
||||
"./static/js/266.5c84b920.chunk.js": "./static/js/266.5c84b920.chunk.js",
|
||||
"./static/js/267.56ebb248.chunk.js": "./static/js/267.56ebb248.chunk.js",
|
||||
"./static/js/268.21a4574f.chunk.js": "./static/js/268.21a4574f.chunk.js",
|
||||
"./static/js/269.28226efe.chunk.js": "./static/js/269.28226efe.chunk.js",
|
||||
"./static/js/27.4304d4c5.chunk.js": "./static/js/27.4304d4c5.chunk.js",
|
||||
"./static/js/270.c5d4fa4b.chunk.js": "./static/js/270.c5d4fa4b.chunk.js",
|
||||
"./static/js/271.78c89e20.chunk.js": "./static/js/271.78c89e20.chunk.js",
|
||||
"./static/js/272.c46f7455.chunk.js": "./static/js/272.c46f7455.chunk.js",
|
||||
"./static/js/273.aa76ad67.chunk.js": "./static/js/273.aa76ad67.chunk.js",
|
||||
"./static/js/274.42a38d5c.chunk.js": "./static/js/274.42a38d5c.chunk.js",
|
||||
"./static/js/275.eab35d6d.chunk.js": "./static/js/275.eab35d6d.chunk.js",
|
||||
"./static/js/276.ba152567.chunk.js": "./static/js/276.ba152567.chunk.js",
|
||||
"./static/js/277.8ad1fd18.chunk.js": "./static/js/277.8ad1fd18.chunk.js",
|
||||
"./static/js/278.82ce41b4.chunk.js": "./static/js/278.82ce41b4.chunk.js",
|
||||
"./static/js/279.92f86639.chunk.js": "./static/js/279.92f86639.chunk.js",
|
||||
"./static/js/28.3836fc1f.chunk.js": "./static/js/28.3836fc1f.chunk.js",
|
||||
"./static/js/280.d787fd18.chunk.js": "./static/js/280.d787fd18.chunk.js",
|
||||
"./static/js/281.8bdfd9de.chunk.js": "./static/js/281.8bdfd9de.chunk.js",
|
||||
"./static/js/282.2f9ff948.chunk.js": "./static/js/282.2f9ff948.chunk.js",
|
||||
"./static/js/283.40367bdd.chunk.js": "./static/js/283.40367bdd.chunk.js",
|
||||
"./static/js/29.b7147766.chunk.js": "./static/js/29.b7147766.chunk.js",
|
||||
"./static/js/3.31787e19.chunk.js": "./static/js/3.31787e19.chunk.js",
|
||||
"./static/js/30.a574d03f.chunk.js": "./static/js/30.a574d03f.chunk.js",
|
||||
"./static/js/31.df24e028.chunk.js": "./static/js/31.df24e028.chunk.js",
|
||||
"./static/js/32.c4d7bbea.chunk.js": "./static/js/32.c4d7bbea.chunk.js",
|
||||
"./static/js/33.a4469f83.chunk.js": "./static/js/33.a4469f83.chunk.js",
|
||||
"./static/js/34.a525a713.chunk.js": "./static/js/34.a525a713.chunk.js",
|
||||
"./static/js/35.991c6b3a.chunk.js": "./static/js/35.991c6b3a.chunk.js",
|
||||
"./static/js/36.ca30f366.chunk.js": "./static/js/36.ca30f366.chunk.js",
|
||||
"./static/js/37.b67239f9.chunk.js": "./static/js/37.b67239f9.chunk.js",
|
||||
"./static/js/38.d6220035.chunk.js": "./static/js/38.d6220035.chunk.js",
|
||||
"./static/js/39.8bbe7e4b.chunk.js": "./static/js/39.8bbe7e4b.chunk.js",
|
||||
"./static/js/4.3c8412d9.chunk.js": "./static/js/4.3c8412d9.chunk.js",
|
||||
"./static/js/40.e107c4b5.chunk.js": "./static/js/40.e107c4b5.chunk.js",
|
||||
"./static/js/41.1ade538e.chunk.js": "./static/js/41.1ade538e.chunk.js",
|
||||
"./static/js/42.b16613be.chunk.js": "./static/js/42.b16613be.chunk.js",
|
||||
"./static/js/43.d972b096.chunk.js": "./static/js/43.d972b096.chunk.js",
|
||||
"./static/js/44.632540f6.chunk.js": "./static/js/44.632540f6.chunk.js",
|
||||
"./static/js/45.83d872cc.chunk.js": "./static/js/45.83d872cc.chunk.js",
|
||||
"./static/js/46.41f6ac73.chunk.js": "./static/js/46.41f6ac73.chunk.js",
|
||||
"./static/js/47.b0fb496a.chunk.js": "./static/js/47.b0fb496a.chunk.js",
|
||||
"./static/js/48.0f00b572.chunk.js": "./static/js/48.0f00b572.chunk.js",
|
||||
"./static/js/49.8b9d29ee.chunk.js": "./static/js/49.8b9d29ee.chunk.js",
|
||||
"./static/js/5.2b2c8a26.chunk.js": "./static/js/5.2b2c8a26.chunk.js",
|
||||
"./static/js/50.b42a5752.chunk.js": "./static/js/50.b42a5752.chunk.js",
|
||||
"./static/js/51.37761187.chunk.js": "./static/js/51.37761187.chunk.js",
|
||||
"./static/js/52.550fc073.chunk.js": "./static/js/52.550fc073.chunk.js",
|
||||
"./static/js/53.86605c6d.chunk.js": "./static/js/53.86605c6d.chunk.js",
|
||||
"./static/js/54.e91a419f.chunk.js": "./static/js/54.e91a419f.chunk.js",
|
||||
"./static/js/55.c6646d9f.chunk.js": "./static/js/55.c6646d9f.chunk.js",
|
||||
"./static/js/56.b701b846.chunk.js": "./static/js/56.b701b846.chunk.js",
|
||||
"./static/js/57.7796d2c0.chunk.js": "./static/js/57.7796d2c0.chunk.js",
|
||||
"./static/js/58.865fc1eb.chunk.js": "./static/js/58.865fc1eb.chunk.js",
|
||||
"./static/js/59.b58d70cd.chunk.js": "./static/js/59.b58d70cd.chunk.js",
|
||||
"./static/js/6.625bd454.chunk.js": "./static/js/6.625bd454.chunk.js",
|
||||
"./static/js/60.f785cede.chunk.js": "./static/js/60.f785cede.chunk.js",
|
||||
"./static/js/61.f63d91e7.chunk.js": "./static/js/61.f63d91e7.chunk.js",
|
||||
"./static/js/62.b83b97dc.chunk.js": "./static/js/62.b83b97dc.chunk.js",
|
||||
"./static/js/63.5d9d4d43.chunk.js": "./static/js/63.5d9d4d43.chunk.js",
|
||||
"./static/js/64.d1514b70.chunk.js": "./static/js/64.d1514b70.chunk.js",
|
||||
"./static/js/65.67458d6c.chunk.js": "./static/js/65.67458d6c.chunk.js",
|
||||
"./static/js/66.ab5a4b68.chunk.js": "./static/js/66.ab5a4b68.chunk.js",
|
||||
"./static/js/67.24cbd43e.chunk.js": "./static/js/67.24cbd43e.chunk.js",
|
||||
"./static/js/68.26be36d2.chunk.js": "./static/js/68.26be36d2.chunk.js",
|
||||
"./static/js/69.d34e03a8.chunk.js": "./static/js/69.d34e03a8.chunk.js",
|
||||
"./static/js/7.45c119ae.chunk.js": "./static/js/7.45c119ae.chunk.js",
|
||||
"./static/js/70.71f3f5e9.chunk.js": "./static/js/70.71f3f5e9.chunk.js",
|
||||
"./static/js/71.3e0e22a5.chunk.js": "./static/js/71.3e0e22a5.chunk.js",
|
||||
"./static/js/72.58d589d7.chunk.js": "./static/js/72.58d589d7.chunk.js",
|
||||
"./static/js/73.38beeb0e.chunk.js": "./static/js/73.38beeb0e.chunk.js",
|
||||
"./static/js/74.f0ac65fe.chunk.js": "./static/js/74.f0ac65fe.chunk.js",
|
||||
"./static/js/75.9f0bfe3e.chunk.js": "./static/js/75.9f0bfe3e.chunk.js",
|
||||
"./static/js/76.7bf08411.chunk.js": "./static/js/76.7bf08411.chunk.js",
|
||||
"./static/js/77.cc859ed7.chunk.js": "./static/js/77.cc859ed7.chunk.js",
|
||||
"./static/js/78.1e7b969f.chunk.js": "./static/js/78.1e7b969f.chunk.js",
|
||||
"./static/js/79.d68cadb4.chunk.js": "./static/js/79.d68cadb4.chunk.js",
|
||||
"./static/js/8.ce3f8347.chunk.js": "./static/js/8.ce3f8347.chunk.js",
|
||||
"./static/js/80.3633279d.chunk.js": "./static/js/80.3633279d.chunk.js",
|
||||
"./static/js/81.13af2c38.chunk.js": "./static/js/81.13af2c38.chunk.js",
|
||||
"./static/js/82.dfb68271.chunk.js": "./static/js/82.dfb68271.chunk.js",
|
||||
"./static/js/83.a2cc3c51.chunk.js": "./static/js/83.a2cc3c51.chunk.js",
|
||||
"./static/js/84.284aff4a.chunk.js": "./static/js/84.284aff4a.chunk.js",
|
||||
"./static/js/85.41f3159a.chunk.js": "./static/js/85.41f3159a.chunk.js",
|
||||
"./static/js/86.4e688009.chunk.js": "./static/js/86.4e688009.chunk.js",
|
||||
"./static/js/87.90d54fab.chunk.js": "./static/js/87.90d54fab.chunk.js",
|
||||
"./static/js/88.03076a1d.chunk.js": "./static/js/88.03076a1d.chunk.js",
|
||||
"./static/js/89.0d2f2ee8.chunk.js": "./static/js/89.0d2f2ee8.chunk.js",
|
||||
"./static/js/9.562a7877.chunk.js": "./static/js/9.562a7877.chunk.js",
|
||||
"./static/js/90.3b84e0a5.chunk.js": "./static/js/90.3b84e0a5.chunk.js",
|
||||
"./static/js/91.ad92675e.chunk.js": "./static/js/91.ad92675e.chunk.js",
|
||||
"./static/js/92.6abb40b8.chunk.js": "./static/js/92.6abb40b8.chunk.js",
|
||||
"./static/js/93.e5666aea.chunk.js": "./static/js/93.e5666aea.chunk.js",
|
||||
"./static/js/94.149f3765.chunk.js": "./static/js/94.149f3765.chunk.js",
|
||||
"./static/js/95.36a069b7.chunk.js": "./static/js/95.36a069b7.chunk.js",
|
||||
"./static/js/96.c09dc12e.chunk.js": "./static/js/96.c09dc12e.chunk.js",
|
||||
"./static/js/97.8ff3af84.chunk.js": "./static/js/97.8ff3af84.chunk.js",
|
||||
"./static/js/98.cd3f899c.chunk.js": "./static/js/98.cd3f899c.chunk.js",
|
||||
"./static/js/99.07307f5a.chunk.js": "./static/js/99.07307f5a.chunk.js",
|
||||
"main.css": "./static/css/main.fd229636.css",
|
||||
"main.js": "./static/js/main.dda56577.js",
|
||||
"static/media/KaTeX_AMS-Regular.ttf": "static/media/KaTeX_AMS-Regular.aaf4eee9.ttf",
|
||||
"static/media/KaTeX_AMS-Regular.woff": "static/media/KaTeX_AMS-Regular.7f06b4e3.woff",
|
||||
"static/media/KaTeX_AMS-Regular.woff2": "static/media/KaTeX_AMS-Regular.e78e28b4.woff2",
|
||||
"static/media/KaTeX_Caligraphic-Bold.ttf": "static/media/KaTeX_Caligraphic-Bold.021dd4dc.ttf",
|
||||
"static/media/KaTeX_Caligraphic-Bold.woff": "static/media/KaTeX_Caligraphic-Bold.1e802ca9.woff",
|
||||
"static/media/KaTeX_Caligraphic-Bold.woff2": "static/media/KaTeX_Caligraphic-Bold.4ec58bef.woff2",
|
||||
"static/media/KaTeX_Caligraphic-Regular.ttf": "static/media/KaTeX_Caligraphic-Regular.d49f2d55.ttf",
|
||||
"static/media/KaTeX_Caligraphic-Regular.woff": "static/media/KaTeX_Caligraphic-Regular.d3b46c3a.woff",
|
||||
"static/media/KaTeX_Caligraphic-Regular.woff2": "static/media/KaTeX_Caligraphic-Regular.7edb53b6.woff2",
|
||||
"static/media/KaTeX_Fraktur-Bold.ttf": "static/media/KaTeX_Fraktur-Bold.a31e7cba.ttf",
|
||||
"static/media/KaTeX_Fraktur-Bold.woff": "static/media/KaTeX_Fraktur-Bold.c4c8cab7.woff",
|
||||
"static/media/KaTeX_Fraktur-Bold.woff2": "static/media/KaTeX_Fraktur-Bold.d5b59ec9.woff2",
|
||||
"static/media/KaTeX_Fraktur-Regular.ttf": "static/media/KaTeX_Fraktur-Regular.a48dad4f.ttf",
|
||||
"static/media/KaTeX_Fraktur-Regular.woff": "static/media/KaTeX_Fraktur-Regular.b7d9c46b.woff",
|
||||
"static/media/KaTeX_Fraktur-Regular.woff2": "static/media/KaTeX_Fraktur-Regular.32a5339e.woff2",
|
||||
"static/media/KaTeX_Main-Bold.ttf": "static/media/KaTeX_Main-Bold.9ceff51b.ttf",
|
||||
"static/media/KaTeX_Main-Bold.woff": "static/media/KaTeX_Main-Bold.22086eb5.woff",
|
||||
"static/media/KaTeX_Main-Bold.woff2": "static/media/KaTeX_Main-Bold.8e1e01c4.woff2",
|
||||
"static/media/KaTeX_Main-BoldItalic.ttf": "static/media/KaTeX_Main-BoldItalic.e8b44b99.ttf",
|
||||
"static/media/KaTeX_Main-BoldItalic.woff": "static/media/KaTeX_Main-BoldItalic.4c57dbc4.woff",
|
||||
"static/media/KaTeX_Main-BoldItalic.woff2": "static/media/KaTeX_Main-BoldItalic.284a17fe.woff2",
|
||||
"static/media/KaTeX_Main-Italic.ttf": "static/media/KaTeX_Main-Italic.29c86397.ttf",
|
||||
"static/media/KaTeX_Main-Italic.woff": "static/media/KaTeX_Main-Italic.99be0e10.woff",
|
||||
"static/media/KaTeX_Main-Italic.woff2": "static/media/KaTeX_Main-Italic.e533d5a2.woff2",
|
||||
"static/media/KaTeX_Main-Regular.ttf": "static/media/KaTeX_Main-Regular.5c94aef4.ttf",
|
||||
"static/media/KaTeX_Main-Regular.woff": "static/media/KaTeX_Main-Regular.b741441f.woff",
|
||||
"static/media/KaTeX_Main-Regular.woff2": "static/media/KaTeX_Main-Regular.5c734d78.woff2",
|
||||
"static/media/KaTeX_Math-BoldItalic.ttf": "static/media/KaTeX_Math-BoldItalic.9a2834a9.ttf",
|
||||
"static/media/KaTeX_Math-BoldItalic.woff": "static/media/KaTeX_Math-BoldItalic.b13731ef.woff",
|
||||
"static/media/KaTeX_Math-BoldItalic.woff2": "static/media/KaTeX_Math-BoldItalic.d747bd1e.woff2",
|
||||
"static/media/KaTeX_Math-Italic.ttf": "static/media/KaTeX_Math-Italic.291e76b8.ttf",
|
||||
"static/media/KaTeX_Math-Italic.woff": "static/media/KaTeX_Math-Italic.f0303906.woff",
|
||||
"static/media/KaTeX_Math-Italic.woff2": "static/media/KaTeX_Math-Italic.4ad08b82.woff2",
|
||||
"static/media/KaTeX_SansSerif-Bold.ttf": "static/media/KaTeX_SansSerif-Bold.7dc027cb.ttf",
|
||||
"static/media/KaTeX_SansSerif-Bold.woff": "static/media/KaTeX_SansSerif-Bold.3fb41955.woff",
|
||||
"static/media/KaTeX_SansSerif-Bold.woff2": "static/media/KaTeX_SansSerif-Bold.6e0830be.woff2",
|
||||
"static/media/KaTeX_SansSerif-Italic.ttf": "static/media/KaTeX_SansSerif-Italic.4059868e.ttf",
|
||||
"static/media/KaTeX_SansSerif-Italic.woff": "static/media/KaTeX_SansSerif-Italic.727a9b0d.woff",
|
||||
"static/media/KaTeX_SansSerif-Italic.woff2": "static/media/KaTeX_SansSerif-Italic.fba01c9c.woff2",
|
||||
"static/media/KaTeX_SansSerif-Regular.ttf": "static/media/KaTeX_SansSerif-Regular.5c58d168.ttf",
|
||||
"static/media/KaTeX_SansSerif-Regular.woff": "static/media/KaTeX_SansSerif-Regular.2555754a.woff",
|
||||
"static/media/KaTeX_SansSerif-Regular.woff2": "static/media/KaTeX_SansSerif-Regular.d929cd67.woff2",
|
||||
"static/media/KaTeX_Script-Regular.ttf": "static/media/KaTeX_Script-Regular.d12ea9ef.ttf",
|
||||
"static/media/KaTeX_Script-Regular.woff": "static/media/KaTeX_Script-Regular.d524c9a5.woff",
|
||||
"static/media/KaTeX_Script-Regular.woff2": "static/media/KaTeX_Script-Regular.755e2491.woff2",
|
||||
"static/media/KaTeX_Size1-Regular.ttf": "static/media/KaTeX_Size1-Regular.7342d45b.ttf",
|
||||
"static/media/KaTeX_Size1-Regular.woff": "static/media/KaTeX_Size1-Regular.08b5f00e.woff",
|
||||
"static/media/KaTeX_Size1-Regular.woff2": "static/media/KaTeX_Size1-Regular.048c39cb.woff2",
|
||||
"static/media/KaTeX_Size2-Regular.ttf": "static/media/KaTeX_Size2-Regular.eb130dcc.ttf",
|
||||
"static/media/KaTeX_Size2-Regular.woff": "static/media/KaTeX_Size2-Regular.af24b0e4.woff",
|
||||
"static/media/KaTeX_Size2-Regular.woff2": "static/media/KaTeX_Size2-Regular.81d6b8d5.woff2",
|
||||
"static/media/KaTeX_Size3-Regular.ttf": "static/media/KaTeX_Size3-Regular.7e02a40c.ttf",
|
||||
"static/media/KaTeX_Size3-Regular.woff": "static/media/KaTeX_Size3-Regular.0d892640.woff",
|
||||
"static/media/KaTeX_Size3-Regular.woff2": "static/media/KaTeX_Size3-Regular.b311ca09.woff2",
|
||||
"static/media/KaTeX_Size4-Regular.ttf": "static/media/KaTeX_Size4-Regular.ad767252.ttf",
|
||||
"static/media/KaTeX_Size4-Regular.woff": "static/media/KaTeX_Size4-Regular.68895bb8.woff",
|
||||
"static/media/KaTeX_Size4-Regular.woff2": "static/media/KaTeX_Size4-Regular.6a3255df.woff2",
|
||||
"static/media/KaTeX_Typewriter-Regular.ttf": "static/media/KaTeX_Typewriter-Regular.25702356.ttf",
|
||||
"static/media/KaTeX_Typewriter-Regular.woff": "static/media/KaTeX_Typewriter-Regular.3fe216d2.woff",
|
||||
"static/media/KaTeX_Typewriter-Regular.woff2": "static/media/KaTeX_Typewriter-Regular.6cc31ea5.woff2",
|
||||
"static/media/auth.png": "static/media/auth.43f1c749.png",
|
||||
"static/media/banner_list.png": "static/media/banner_list.ad510bee.png",
|
||||
"static/media/banner_sub.png": "static/media/banner_sub.c6034810.png",
|
||||
"static/media/beijintulogontwo.png": "static/media/beijintulogontwo.245dc9e1.png",
|
||||
"static/media/bg.jpg": "static/media/bg.88a774b5.jpg",
|
||||
"static/media/book.svg": "static/media/book.02f483b8.svg",
|
||||
"static/media/douyu.jpg": "static/media/douyu.e5ea5a90.jpg",
|
||||
"static/media/firefox_icon.png": "static/media/firefox_icon.cfd87a8f.png",
|
||||
"static/media/guihome1.png": "static/media/guihome1.eca5276e.png",
|
||||
"static/media/guihome2.jpg": "static/media/guihome2.c65f40bf.jpg",
|
||||
"static/media/guihome3.jpg": "static/media/guihome3.0e1dc34b.jpg",
|
||||
"static/media/guihome4.jpg": "static/media/guihome4.6cc0d72b.jpg",
|
||||
"static/media/guihome5.jpg": "static/media/guihome5.1ac2c872.jpg",
|
||||
"static/media/guihome6.jpg": "static/media/guihome6.7fc4fe9d.jpg",
|
||||
"static/media/internet-explorer@2x.png": "static/media/internet-explorer@2x.f122e0ab.png",
|
||||
"static/media/job.png": "static/media/job.b2881c7d.png",
|
||||
"static/media/match_ad.jpg": "static/media/match_ad.4e957369.jpg",
|
||||
"static/media/message.svg": "static/media/message.e7922cf2.svg",
|
||||
"static/media/messagegrey.svg": "static/media/messagegrey.80d0b058.svg",
|
||||
"static/media/mytc.png": "static/media/mytc.4ef5faf4.png",
|
||||
"static/media/oj_banner.jpg": "static/media/oj_banner.25ca233e.jpg",
|
||||
"static/media/passall.png": "static/media/passall.46817e26.png",
|
||||
"static/media/passpart.png": "static/media/passpart.4aaf3e6b.png",
|
||||
"static/media/rc-tree.png": "static/media/rc-tree.776c7fe6.png",
|
||||
"static/media/skzbdx.png": "static/media/skzbdx.01cb5862.png",
|
||||
"static/media/teach_ex.jpg": "static/media/teach_ex.a415d7a9.jpg"
|
||||
}
|
|
@ -0,0 +1,93 @@
|
|||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const paths = require('./paths');
|
||||
|
||||
// Make sure that including paths.js after env.js will read .env variables.
|
||||
delete require.cache[require.resolve('./paths')];
|
||||
|
||||
const NODE_ENV = process.env.NODE_ENV;
|
||||
if (!NODE_ENV) {
|
||||
throw new Error(
|
||||
'The NODE_ENV environment variable is required but was not specified.'
|
||||
);
|
||||
}
|
||||
|
||||
// https://github.com/bkeepers/dotenv#what-other-env-files-can-i-use
|
||||
var dotenvFiles = [
|
||||
`${paths.dotenv}.${NODE_ENV}.local`,
|
||||
`${paths.dotenv}.${NODE_ENV}`,
|
||||
// Don't include `.env.local` for `test` environment
|
||||
// since normally you expect tests to produce the same
|
||||
// results for everyone
|
||||
NODE_ENV !== 'test' && `${paths.dotenv}.local`,
|
||||
paths.dotenv,
|
||||
].filter(Boolean);
|
||||
|
||||
// Load environment variables from .env* files. Suppress warnings using silent
|
||||
// if this file is missing. dotenv will never modify any environment variables
|
||||
// that have already been set. Variable expansion is supported in .env files.
|
||||
// https://github.com/motdotla/dotenv
|
||||
// https://github.com/motdotla/dotenv-expand
|
||||
dotenvFiles.forEach(dotenvFile => {
|
||||
if (fs.existsSync(dotenvFile)) {
|
||||
require('dotenv-expand')(
|
||||
require('dotenv').config({
|
||||
path: dotenvFile,
|
||||
})
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
// We support resolving modules according to `NODE_PATH`.
|
||||
// This lets you use absolute paths in imports inside large monorepos:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/253.
|
||||
// It works similar to `NODE_PATH` in Node itself:
|
||||
// https://nodejs.org/api/modules.html#modules_loading_from_the_global_folders
|
||||
// Note that unlike in Node, only *relative* paths from `NODE_PATH` are honored.
|
||||
// Otherwise, we risk importing Node.js core modules into an app instead of Webpack shims.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/1023#issuecomment-265344421
|
||||
// We also resolve them to make sure all tools using them work consistently.
|
||||
const appDirectory = fs.realpathSync(process.cwd());
|
||||
process.env.NODE_PATH = (process.env.NODE_PATH || '')
|
||||
.split(path.delimiter)
|
||||
.filter(folder => folder && !path.isAbsolute(folder))
|
||||
.map(folder => path.resolve(appDirectory, folder))
|
||||
.join(path.delimiter);
|
||||
|
||||
// Grab NODE_ENV and REACT_APP_* environment variables and prepare them to be
|
||||
// injected into the application via DefinePlugin in Webpack configuration.
|
||||
const REACT_APP = /^REACT_APP_/i;
|
||||
|
||||
function getClientEnvironment(publicUrl) {
|
||||
const raw = Object.keys(process.env)
|
||||
.filter(key => REACT_APP.test(key))
|
||||
.reduce(
|
||||
(env, key) => {
|
||||
env[key] = process.env[key];
|
||||
return env;
|
||||
},
|
||||
{
|
||||
// Useful for determining whether we’re running in production mode.
|
||||
// Most importantly, it switches React into the correct mode.
|
||||
NODE_ENV: process.env.NODE_ENV || 'development',
|
||||
// Useful for resolving the correct path to static assets in `public`.
|
||||
// For example, <img src={process.env.PUBLIC_URL + '/img/logo.png'} />.
|
||||
// This should only be used as an escape hatch. Normally you would put
|
||||
// images into the `src` and `import` them in code to get their paths.
|
||||
PUBLIC_URL: publicUrl,
|
||||
}
|
||||
);
|
||||
// Stringify all values so we can feed into Webpack DefinePlugin
|
||||
const stringified = {
|
||||
'process.env': Object.keys(raw).reduce((env, key) => {
|
||||
env[key] = JSON.stringify(raw[key]);
|
||||
return env;
|
||||
}, {}),
|
||||
};
|
||||
|
||||
return { raw, stringified };
|
||||
}
|
||||
|
||||
module.exports = getClientEnvironment;
|
|
@ -0,0 +1,14 @@
|
|||
'use strict';
|
||||
|
||||
// This is a custom Jest transformer turning style imports into empty objects.
|
||||
// http://facebook.github.io/jest/docs/en/webpack.html
|
||||
|
||||
module.exports = {
|
||||
process() {
|
||||
return 'module.exports = {};';
|
||||
},
|
||||
getCacheKey() {
|
||||
// The output is always the same.
|
||||
return 'cssTransform';
|
||||
},
|
||||
};
|
|
@ -0,0 +1,12 @@
|
|||
'use strict';
|
||||
|
||||
const path = require('path');
|
||||
|
||||
// This is a custom Jest transformer turning file imports into filenames.
|
||||
// http://facebook.github.io/jest/docs/en/webpack.html
|
||||
|
||||
module.exports = {
|
||||
process(src, filename) {
|
||||
return `module.exports = ${JSON.stringify(path.basename(filename))};`;
|
||||
},
|
||||
};
|
|
@ -0,0 +1,55 @@
|
|||
'use strict';
|
||||
|
||||
const path = require('path');
|
||||
const fs = require('fs');
|
||||
const url = require('url');
|
||||
|
||||
// Make sure any symlinks in the project folder are resolved:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/637
|
||||
const appDirectory = fs.realpathSync(process.cwd());
|
||||
const resolveApp = relativePath => path.resolve(appDirectory, relativePath);
|
||||
|
||||
const envPublicUrl = process.env.PUBLIC_URL;
|
||||
|
||||
function ensureSlash(path, needsSlash) {
|
||||
const hasSlash = path.endsWith('/');
|
||||
if (hasSlash && !needsSlash) {
|
||||
return path.substr(path, path.length - 1);
|
||||
} else if (!hasSlash && needsSlash) {
|
||||
return `${path}/`;
|
||||
} else {
|
||||
return path;
|
||||
}
|
||||
}
|
||||
|
||||
const getPublicUrl = appPackageJson =>
|
||||
envPublicUrl || require(appPackageJson).homepage;
|
||||
|
||||
// We use `PUBLIC_URL` environment variable or "homepage" field to infer
|
||||
// "public path" at which the app is served.
|
||||
// Webpack needs to know it to put the right <script> hrefs into HTML even in
|
||||
// single-page apps that may serve index.html for nested URLs like /todos/42.
|
||||
// We can't use a relative path in HTML because we don't want to load something
|
||||
// like /todos/42/static/js/bundle.7289d.js. We have to know the root.
|
||||
function getServedPath(appPackageJson) {
|
||||
const publicUrl = getPublicUrl(appPackageJson);
|
||||
const servedUrl =
|
||||
envPublicUrl || (publicUrl ? url.parse(publicUrl).pathname : '/');
|
||||
return ensureSlash(servedUrl, true);
|
||||
}
|
||||
|
||||
// config after eject: we're in ./config/
|
||||
module.exports = {
|
||||
dotenv: resolveApp('.env'),
|
||||
appBuild: resolveApp('build'),
|
||||
appPublic: resolveApp('public'),
|
||||
appHtml: resolveApp('public/index.html'),
|
||||
appIndexJs: resolveApp('src/index.js'),
|
||||
appPackageJson: resolveApp('package.json'),
|
||||
appSrc: resolveApp('src'),
|
||||
yarnLockFile: resolveApp('yarn.lock'),
|
||||
testsSetup: resolveApp('src/setupTests.js'),
|
||||
appNodeModules: resolveApp('node_modules'),
|
||||
publicUrl: getPublicUrl(resolveApp('package.json')),
|
||||
servedPath: getServedPath(resolveApp('package.json')),
|
||||
};
|
|
@ -0,0 +1,22 @@
|
|||
'use strict';
|
||||
|
||||
if (typeof Promise === 'undefined') {
|
||||
// Rejection tracking prevents a common issue where React gets into an
|
||||
// inconsistent state due to an error, but it gets swallowed by a Promise,
|
||||
// and the user has no idea what causes React's erratic future behavior.
|
||||
require('promise/lib/rejection-tracking').enable();
|
||||
window.Promise = require('promise/lib/es6-extensions.js');
|
||||
}
|
||||
|
||||
// fetch() polyfill for making API calls.
|
||||
require('whatwg-fetch');
|
||||
|
||||
// Object.assign() is commonly used with React.
|
||||
// It will use the native implementation if it's present and isn't buggy.
|
||||
Object.assign = require('object-assign');
|
||||
|
||||
// In tests, polyfill requestAnimationFrame since jsdom doesn't provide it yet.
|
||||
// We don't polyfill it in the browser--this is user's responsibility.
|
||||
if (process.env.NODE_ENV === 'test') {
|
||||
require('raf').polyfill(global);
|
||||
}
|
|
@ -0,0 +1,282 @@
|
|||
'use strict';
|
||||
|
||||
const autoprefixer = require('autoprefixer');
|
||||
const path = require('path');
|
||||
const webpack = require('webpack');
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
const CaseSensitivePathsPlugin = require('case-sensitive-paths-webpack-plugin');
|
||||
const InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
|
||||
const WatchMissingNodeModulesPlugin = require('react-dev-utils/WatchMissingNodeModulesPlugin');
|
||||
const ModuleScopePlugin = require('react-dev-utils/ModuleScopePlugin');
|
||||
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');
|
||||
const getClientEnvironment = require('./env');
|
||||
const paths = require('./paths');
|
||||
|
||||
const publicPath = '/';
|
||||
const env = getClientEnvironment('/');
|
||||
|
||||
module.exports = {
|
||||
optimization: {
|
||||
splitChunks: {
|
||||
chunks: 'async',
|
||||
// 大于30KB才单独分离成chunk
|
||||
minSize: 30000,
|
||||
maxAsyncRequests: 5,
|
||||
maxInitialRequests: 3,
|
||||
name: true,
|
||||
cacheGroups: {
|
||||
default: {
|
||||
priority: -20,
|
||||
reuseExistingChunk: true,
|
||||
},
|
||||
vendors: {
|
||||
name: 'vendors',
|
||||
test: /[\\/]node_modules[\\/]/,
|
||||
priority: -10,
|
||||
chunks: "all"
|
||||
}
|
||||
}
|
||||
},
|
||||
runtimeChunk: true
|
||||
},
|
||||
mode: 'development',
|
||||
// 开启调试
|
||||
devtool: "source-map", // 开启调试
|
||||
// These are the "entry points" to our application.
|
||||
// This means they will be the "root" imports that are included in JS bundle.
|
||||
// The first two entry points enable "hot" CSS and auto-refreshes for JS.
|
||||
entry: [
|
||||
// We ship a few polyfills by default:
|
||||
require.resolve('./polyfills'),
|
||||
// Include an alternative client for WebpackDevServer. A client's job is to
|
||||
// connect to WebpackDevServer by a socket and get notified about changes.
|
||||
// When you save a file, the client will either apply hot updates (in case
|
||||
// of CSS changes), or refresh the page (in case of JS changes). When you
|
||||
// make a syntax error, this client will display a syntax error overlay.
|
||||
// Note: instead of the default WebpackDevServer client, we use a custom one
|
||||
// to bring better experience for Create React App users. You can replace
|
||||
// the line below with these two lines if you prefer the stock client:
|
||||
// require.resolve('webpack-dev-server/client') + '?/',
|
||||
// require.resolve('webpack/hot/dev-server'),
|
||||
require.resolve('react-dev-utils/webpackHotDevClient'),
|
||||
// Finally, this is your app's code:
|
||||
paths.appIndexJs,
|
||||
// We include the app code last so that if there is a runtime error during
|
||||
// initialization, it doesn't blow up the WebpackDevServer client, and
|
||||
// changing JS code would still trigger a refresh.
|
||||
],
|
||||
output: {
|
||||
// Add /* filename */ comments to generated require()s in the output.
|
||||
pathinfo: true,
|
||||
globalObject: 'this',
|
||||
// This does not produce a real file. It's just the virtual path that is
|
||||
// served by WebpackDevServer in development. This is the JS bundle
|
||||
// containing code from all our entry points, and the Webpack runtime.
|
||||
filename: 'static/js/bundle.js',
|
||||
// There are also additional JS chunk files if you use code splitting.
|
||||
chunkFilename: 'static/js/[name].chunk.js',
|
||||
// This is the URL that app is served from. We use "/" in development.
|
||||
publicPath,
|
||||
// Point sourcemap entries to original disk location (format as URL on Windows)
|
||||
devtoolModuleFilenameTemplate: info =>
|
||||
path.resolve(info.absoluteResourcePath).replace(/\\/g, '/'),
|
||||
},
|
||||
resolve: {
|
||||
// This allows you to set a fallback for where Webpack should look for modules.
|
||||
// We placed these paths second because we want `node_modules` to "win"
|
||||
// if there are any conflicts. This matches Node resolution mechanism.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/253
|
||||
modules: ['node_modules', paths.appNodeModules].concat(
|
||||
// It is guaranteed to exist because we tweak it in `env.js`
|
||||
process.env.NODE_PATH.split(path.delimiter).filter(Boolean)
|
||||
),
|
||||
// These are the reasonable defaults supported by the Node ecosystem.
|
||||
// We also include JSX as a common component filename extension to support
|
||||
// some tools, although we do not recommend using it, see:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/290
|
||||
// `web` extension prefixes have been added for better support
|
||||
// for React Native Web.
|
||||
extensions: ['.web.js', '.mjs', '.js', '.json', '.web.jsx', '.jsx'],
|
||||
alias: {
|
||||
|
||||
"educoder": __dirname + "/../src/common/educoder.js",
|
||||
// Support React Native Web
|
||||
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
|
||||
'react-native': 'react-native-web',
|
||||
},
|
||||
plugins: [
|
||||
// Prevents users from importing files from outside of src/ (or node_modules/).
|
||||
// This often causes confusion because we only process files within src/ with babel.
|
||||
// To fix this, we prevent you from importing files out of src/ -- if you'd like to,
|
||||
// please link the files into your node_modules/ and let module-resolution kick in.
|
||||
// Make sure your source files are compiled, as they will not be processed in any way.
|
||||
new ModuleScopePlugin(paths.appSrc, [paths.appPackageJson]),
|
||||
],
|
||||
},
|
||||
module: {
|
||||
strictExportPresence: true,
|
||||
rules: [
|
||||
{
|
||||
// "oneOf" will traverse all following loaders until one will
|
||||
// match the requirements. When no loader matches it will fall
|
||||
// back to the "file" loader at the end of the loader list.
|
||||
oneOf: [
|
||||
// "url" loader works like "file" loader except that it embeds assets
|
||||
// smaller than specified limit in bytes as data URLs to avoid requests.
|
||||
// A missing `test` is equivalent to a match.
|
||||
{
|
||||
test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/],
|
||||
loader: require.resolve('url-loader'),
|
||||
options: {
|
||||
limit: 10000,
|
||||
name: 'static/media/[name].[hash:8].[ext]',
|
||||
},
|
||||
},
|
||||
// Process JS with Babel.
|
||||
{
|
||||
test: /\.(js|jsx|mjs)$/,
|
||||
include: paths.appSrc,
|
||||
exclude: /node_modules/,
|
||||
loader: require.resolve('babel-loader'),
|
||||
options: {
|
||||
// This is a feature of `babel-loader` for webpack (not Babel itself).
|
||||
// It enables caching results in ./node_modules/.cache/babel-loader/
|
||||
// directory for faster rebuilds.
|
||||
cacheDirectory: true,
|
||||
"plugins": [
|
||||
["import", {
|
||||
"libraryName": "antd",
|
||||
"libraryDirectory": "es",
|
||||
"style": "css"
|
||||
}]
|
||||
]
|
||||
},
|
||||
},
|
||||
// "postcss" loader applies autoprefixer to our CSS.
|
||||
// "css" loader resolves paths in CSS and adds assets as dependencies.
|
||||
// "style" loader turns CSS into JS modules that inject <style> tags.
|
||||
// In production, we use a plugin to extract that CSS to a file, but
|
||||
// in development "style" loader enables hot editing of CSS.
|
||||
{
|
||||
test: /\.css$/,
|
||||
use: [
|
||||
require.resolve('style-loader'),
|
||||
{
|
||||
loader: require.resolve('css-loader'),
|
||||
options: {
|
||||
importLoaders: 1,
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve('postcss-loader'),
|
||||
options: {
|
||||
// Necessary for external CSS imports to work
|
||||
// https://github.com/facebookincubator/create-react-app/issues/2677
|
||||
ident: 'postcss',
|
||||
plugins: () => [
|
||||
require('postcss-flexbugs-fixes'),
|
||||
autoprefixer({
|
||||
browsers: [
|
||||
'>1%',
|
||||
'last 4 versions',
|
||||
'Firefox ESR',
|
||||
'not ie < 9', // React doesn't support IE8 anyway
|
||||
],
|
||||
flexbox: 'no-2009',
|
||||
}),
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
test: /\.scss$/,
|
||||
use: [
|
||||
require.resolve('style-loader'),
|
||||
{
|
||||
loader: require.resolve("css-loader"),
|
||||
options: {
|
||||
importLoaders: 1,
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve("sass-loader")
|
||||
}
|
||||
],
|
||||
},
|
||||
// "file" loader makes sure those assets get served by WebpackDevServer.
|
||||
// When you `import` an asset, you get its (virtual) filename.
|
||||
// In production, they would get copied to the `build` folder.
|
||||
// This loader doesn't use a "test" so it will catch all modules
|
||||
// that fall through the other loaders.
|
||||
{
|
||||
// Exclude `js` files to keep "css" loader working as it injects
|
||||
// its runtime that would otherwise processed through "file" loader.
|
||||
// Also exclude `html` and `json` extensions so they get processed
|
||||
// by webpacks internal loaders.
|
||||
exclude: [/\.(js|jsx|mjs)$/, /\.html$/, /\.json$/],
|
||||
loader: require.resolve('file-loader'),
|
||||
options: {
|
||||
name: 'static/media/[name].[hash:8].[ext]',
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
// ** STOP ** Are you adding a new loader?
|
||||
// Make sure to add the new loader(s) before the "file" loader.
|
||||
],
|
||||
},
|
||||
plugins: [
|
||||
// Makes some environment variables available in index.html.
|
||||
// The public URL is available as %PUBLIC_URL% in index.html, e.g.:
|
||||
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
// In development, this will be an empty string.
|
||||
// Generates an `index.html` file with the <script> injected.
|
||||
new HtmlWebpackPlugin({
|
||||
inject: false,
|
||||
template: paths.appHtml,
|
||||
}),
|
||||
new InterpolateHtmlPlugin(HtmlWebpackPlugin, env.raw),
|
||||
|
||||
// Add module names to factory functions so they appear in browser profiler.
|
||||
new webpack.NamedModulesPlugin(),
|
||||
// Makes some environment variables available to the JS code, for example:
|
||||
// if (process.env.NODE_ENV === 'development') { ... }. See `./env.js`.
|
||||
new webpack.DefinePlugin(env.stringified),
|
||||
// This is necessary to emit hot updates (currently CSS only):
|
||||
new webpack.HotModuleReplacementPlugin(),
|
||||
// Watcher doesn't work well if you mistype casing in a path so we use
|
||||
// a plugin that prints an error when you attempt to do this.
|
||||
// See https://github.com/facebookincubator/create-react-app/issues/240
|
||||
new CaseSensitivePathsPlugin(),
|
||||
// If you require a missing module and then `npm install` it, you still have
|
||||
// to restart the development server for Webpack to discover it. This plugin
|
||||
// makes the discovery automatic so you don't have to restart.
|
||||
// See https://github.com/facebookincubator/create-react-app/issues/186
|
||||
new WatchMissingNodeModulesPlugin(paths.appNodeModules),
|
||||
// Moment.js is an extremely popular library that bundles large locale files
|
||||
// by default due to how Webpack interprets its code. This is a practical
|
||||
// solution that requires the user to opt into importing specific locales.
|
||||
// https://github.com/jmblog/how-to-optimize-momentjs-with-webpack
|
||||
// You can remove this if you don't use Moment.js:
|
||||
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
|
||||
new MonacoWebpackPlugin({
|
||||
features: ['!gotoSymbol'],
|
||||
})
|
||||
],
|
||||
// Some libraries import Node modules but don't use them in the browser.
|
||||
// Tell Webpack to provide empty mocks for them so importing them works.
|
||||
node: {
|
||||
dgram: 'empty',
|
||||
fs: 'empty',
|
||||
net: 'empty',
|
||||
tls: 'empty',
|
||||
child_process: 'empty',
|
||||
},
|
||||
// Turn off performance hints during development because we don't do any
|
||||
// splitting or minification in interest of speed. These warnings become
|
||||
// cumbersome.
|
||||
performance: {
|
||||
hints: false,
|
||||
},
|
||||
};
|
|
@ -0,0 +1,331 @@
|
|||
'use strict';
|
||||
const autoprefixer = require('autoprefixer');
|
||||
const path = require('path');
|
||||
const webpack = require('webpack');
|
||||
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
||||
const ManifestPlugin = require('webpack-manifest-plugin');
|
||||
const InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
|
||||
const SWPrecacheWebpackPlugin = require('sw-precache-webpack-plugin');
|
||||
const eslintFormatter = require('react-dev-utils/eslintFormatter');
|
||||
const ModuleScopePlugin = require('react-dev-utils/ModuleScopePlugin');
|
||||
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin');
|
||||
|
||||
const TerserJSPlugin = require('terser-webpack-plugin');
|
||||
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
|
||||
|
||||
const paths = require('./paths');
|
||||
const getClientEnvironment = require('./env');
|
||||
|
||||
// Some apps do not use client-side routing with pushState.
|
||||
// For these, "homepage" can be set to "." to enable relative asset paths.
|
||||
let publicPath = '/react/build/';
|
||||
// let nodeEnv = process.env.NODE_ENV
|
||||
// if (nodeEnv === 'testBuild') {
|
||||
// publicPath = 'https://testforgeplus.trustie.net/react/build/';
|
||||
// }
|
||||
// if (nodeEnv === 'production') {
|
||||
// publicPath = 'https://forgeplus.trustie.net/react/build/';
|
||||
// }
|
||||
const publicUrl = publicPath.slice(0, -1);
|
||||
const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';
|
||||
const env = getClientEnvironment(publicPath);
|
||||
|
||||
// This is the production configuration.
|
||||
// It compiles slowly and is focused on producing a fast and minimal bundle.
|
||||
// The development configuration is different and lives in a separate file.
|
||||
// 上线用的
|
||||
module.exports = {
|
||||
optimization: {
|
||||
minimizer: [new TerserJSPlugin({}), new OptimizeCSSAssetsPlugin({})],
|
||||
splitChunks: {
|
||||
chunks: 'async',
|
||||
// 大于30KB才单独分离成chunk
|
||||
minSize: 30000,
|
||||
maxAsyncRequests: 5,
|
||||
maxInitialRequests: 3,
|
||||
name: true,
|
||||
cacheGroups: {
|
||||
default: {
|
||||
minChunks: 2,
|
||||
priority: -20,
|
||||
reuseExistingChunk: true,
|
||||
},
|
||||
// vendors: {
|
||||
// name: 'vendors',
|
||||
// test: /[\\/]node_modules[\\/]/,
|
||||
// priority: -10,
|
||||
// chunks: "all"
|
||||
// }
|
||||
}
|
||||
},
|
||||
runtimeChunk: true
|
||||
},
|
||||
bail: true,
|
||||
mode: 'production',
|
||||
devtool: false,//测试版
|
||||
entry: [require.resolve('./polyfills'), paths.appIndexJs],
|
||||
output: {
|
||||
path: paths.appBuild,
|
||||
globalObject: 'this',
|
||||
filename: './static/js/[name].[contenthash:8].js',
|
||||
chunkFilename: './static/js/[name].[contenthash:8].chunk.js',
|
||||
publicPath,
|
||||
|
||||
// Point sourcemap entries to original disk location (format as URL on Windows)
|
||||
devtoolModuleFilenameTemplate: info =>
|
||||
path
|
||||
.relative(paths.appSrc, info.absoluteResourcePath)
|
||||
.replace(/\\/g, '/'),
|
||||
},
|
||||
resolve: {
|
||||
// This allows you to set a fallback for where Webpack should look for modules.
|
||||
// We placed these paths second because we want `node_modules` to "win"
|
||||
// if there are any conflicts. This matches Node resolution mechanism.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/253
|
||||
modules: ['node_modules', paths.appNodeModules].concat(
|
||||
// It is guaranteed to exist because we tweak it in `env.js`
|
||||
process.env.NODE_PATH.split(path.delimiter).filter(Boolean)
|
||||
),
|
||||
// These are the reasonable defaults supported by the Node ecosystem.
|
||||
// We also include JSX as a common component filename extension to support
|
||||
// some tools, although we do not recommend using it, see:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/290
|
||||
// `web` extension prefixes have been added for better support
|
||||
// for React Native Web.
|
||||
extensions: ['.web.js', '.mjs', '.js', '.json', '.web.jsx', '.jsx'],
|
||||
alias: {
|
||||
"educoder": __dirname + "/../src/common/educoder.js",
|
||||
// Support React Native Web
|
||||
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
|
||||
'react-native': 'react-native-web',
|
||||
},
|
||||
plugins: [
|
||||
// Prevents users from importing files from outside of src/ (or node_modules/).
|
||||
// This often causes confusion because we only process files within src/ with babel.
|
||||
// To fix this, we prevent you from importing files out of src/ -- if you'd like to,
|
||||
// please link the files into your node_modules/ and let module-resolution kick in.
|
||||
// Make sure your source files are compiled, as they will not be processed in any way.
|
||||
new ModuleScopePlugin(paths.appSrc, [paths.appPackageJson]),
|
||||
],
|
||||
},
|
||||
module: {
|
||||
strictExportPresence: true,
|
||||
rules: [
|
||||
{
|
||||
test: /\.(js|jsx|mjs)$/,
|
||||
enforce: 'pre',
|
||||
use: [
|
||||
{
|
||||
options: {
|
||||
formatter: eslintFormatter,
|
||||
eslintPath: require.resolve('eslint'),
|
||||
|
||||
},
|
||||
loader: require.resolve('eslint-loader'),
|
||||
},
|
||||
],
|
||||
include: paths.appSrc,
|
||||
},
|
||||
{
|
||||
// "oneOf" will traverse all following loaders until one will
|
||||
// match the requirements. When no loader matches it will fall
|
||||
// back to the "file" loader at the end of the loader list.
|
||||
oneOf: [
|
||||
// "url" loader works just like "file" loader but it also embeds
|
||||
// assets smaller than specified size as data URLs to avoid requests.
|
||||
{
|
||||
test: [/\.bmp$/, /\.gif$/, /\.jpe?g$/, /\.png$/],
|
||||
loader: require.resolve('url-loader'),
|
||||
options: {
|
||||
limit: 10000,
|
||||
name: 'static/media/[name].[hash:8].[ext]',
|
||||
},
|
||||
},
|
||||
// Process JS with Babel.
|
||||
{
|
||||
test: /\.(js|jsx|mjs)$/,
|
||||
include: paths.appSrc,
|
||||
exclude: /node_modules/,
|
||||
loader: require.resolve('babel-loader'),
|
||||
options: {
|
||||
compact: true,
|
||||
"plugins": [
|
||||
["import", {
|
||||
"libraryName": "antd",
|
||||
"libraryDirectory": "es",
|
||||
"style": "css"
|
||||
}]
|
||||
]
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
test: /\.css$/,
|
||||
|
||||
use: [{
|
||||
loader: MiniCssExtractPlugin.loader,
|
||||
options: {
|
||||
publicPath
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve("css-loader"),
|
||||
options: {
|
||||
importLoaders: 1,
|
||||
sourceMap: shouldUseSourceMap,
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve('postcss-loader'),
|
||||
options: {
|
||||
ident: 'postcss',
|
||||
plugins: () => [
|
||||
require('postcss-flexbugs-fixes'),
|
||||
autoprefixer({
|
||||
browsers: [
|
||||
'>1%',
|
||||
'last 4 versions',
|
||||
'Firefox ESR',
|
||||
'not ie < 9', // React doesn't support IE8 anyway
|
||||
],
|
||||
flexbox: 'no-2009',
|
||||
}),
|
||||
],
|
||||
},
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
test: /\.scss$/,
|
||||
use: [{
|
||||
loader: MiniCssExtractPlugin.loader,
|
||||
options: {
|
||||
publicPath
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve("css-loader"),
|
||||
options: {
|
||||
importLoaders: 1,
|
||||
sourceMap: shouldUseSourceMap,
|
||||
},
|
||||
},
|
||||
{
|
||||
loader: require.resolve("sass-loader")
|
||||
}
|
||||
],
|
||||
},
|
||||
// "file" loader makes sure assets end up in the `build` folder.
|
||||
// When you `import` an asset, you get its filename.
|
||||
// This loader doesn't use a "test" so it will catch all modules
|
||||
// that fall through the other loaders.
|
||||
{
|
||||
loader: require.resolve('file-loader'),
|
||||
// Exclude `js` files to keep "css" loader working as it injects
|
||||
// it's runtime that would otherwise processed through "file" loader.
|
||||
// Also exclude `html` and `json` extensions so they get processed
|
||||
// by webpacks internal loaders.
|
||||
exclude: [/\.(js|jsx|mjs)$/, /\.html$/, /\.json$/],
|
||||
options: {
|
||||
name: 'static/media/[name].[contenthash:8].[ext]',
|
||||
},
|
||||
},
|
||||
// ** STOP ** Are you adding a new loader?
|
||||
// Make sure to add the new loader(s) before the "file" loader.
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
plugins: [
|
||||
// Makes some environment variables available in index.html.
|
||||
// The public URL is available as %PUBLIC_URL% in index.html, e.g.:
|
||||
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
// In production, it will be an empty string unless you specify "homepage"
|
||||
// in `package.json`, in which case it will be the pathname of that URL.
|
||||
// Generates an `index.html` file with the <script> injected.
|
||||
new HtmlWebpackPlugin({
|
||||
inject: false,
|
||||
template: paths.appHtml,
|
||||
minify: {
|
||||
removeComments: true,
|
||||
collapseWhitespace: true,
|
||||
removeRedundantAttributes: true,
|
||||
useShortDoctype: true,
|
||||
removeEmptyAttributes: true,
|
||||
removeStyleLinkTypeAttributes: true,
|
||||
keepClosingSlash: true,
|
||||
minifyJS: true,
|
||||
minifyCSS: true,
|
||||
minifyURLs: true,
|
||||
},
|
||||
}),
|
||||
new InterpolateHtmlPlugin(HtmlWebpackPlugin, env.raw),
|
||||
// Makes some environment variables available to the JS code, for example:
|
||||
// if (process.env.NODE_ENV === 'production') { ... }. See `./env.js`.
|
||||
// It is absolutely essential that NODE_ENV was set to production here.
|
||||
// Otherwise React will be compiled in the very slow development mode.
|
||||
new webpack.DefinePlugin(env.stringified),
|
||||
|
||||
new MiniCssExtractPlugin({
|
||||
filename: 'static/css/[name].[contenthash:8].css',
|
||||
chunkFilename: 'static/css/[name].[contenthash:8].chunk.css',
|
||||
}),
|
||||
// Generate a manifest file which contains a mapping of all asset filenames
|
||||
// to their corresponding output file so that tools can pick it up without
|
||||
// having to parse `index.html`.
|
||||
new ManifestPlugin({
|
||||
fileName: 'asset-manifest.json',
|
||||
}),
|
||||
// Generate a service worker script that will precache, and keep up to date,
|
||||
// the HTML & assets that are part of the Webpack build.
|
||||
new SWPrecacheWebpackPlugin({
|
||||
// By default, a cache-busting query parameter is appended to requests
|
||||
// used to populate the caches, to ensure the responses are fresh.
|
||||
// If a URL is already hashed by Webpack, then there is no concern
|
||||
// about it being stale, and the cache-busting can be skipped.
|
||||
dontCacheBustUrlsMatching: /\.\w{8}\./,
|
||||
filename: 'service-worker.js',
|
||||
logger(message) {
|
||||
if (message.indexOf('Total precache size is') === 0) {
|
||||
// This message occurs for every build and is a bit too noisy.
|
||||
return;
|
||||
}
|
||||
if (message.indexOf('Skipping static resource') === 0) {
|
||||
// This message obscures real errors so we ignore it.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/2612
|
||||
return;
|
||||
}
|
||||
// console.log(message);
|
||||
},
|
||||
minify: true,
|
||||
// For unknown URLs, fallback to the index page
|
||||
navigateFallback: publicUrl + '/index.html',
|
||||
// Ignores URLs starting from /__ (useful for Firebase):
|
||||
// https://github.com/facebookincubator/create-react-app/issues/2237#issuecomment-302693219
|
||||
navigateFallbackWhitelist: [/^(?!\/__).*/],
|
||||
// Don't precache sourcemaps (they're large) and build asset manifest:
|
||||
staticFileGlobsIgnorePatterns: [/\.map$/, /asset-manifest\.json$/],
|
||||
}),
|
||||
// Moment.js is an extremely popular library that bundles large locale files
|
||||
// by default due to how Webpack interprets its code. This is a practical
|
||||
// solution that requires the user to opt into importing specific locales.
|
||||
// https://github.com/jmblog/how-to-optimize-momentjs-with-webpack
|
||||
// You can remove this if you don't use Moment.js:
|
||||
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),
|
||||
new MonacoWebpackPlugin({
|
||||
features: ['!gotoSymbol'],
|
||||
}),
|
||||
new webpack.NamedChunksPlugin(),
|
||||
new webpack.HashedModuleIdsPlugin()
|
||||
],
|
||||
// Some libraries import Node modules but don't use them in the browser.
|
||||
// Tell Webpack to provide empty mocks for them so importing them works.
|
||||
node: {
|
||||
dgram: 'empty',
|
||||
fs: 'empty',
|
||||
net: 'empty',
|
||||
tls: 'empty',
|
||||
child_process: 'empty',
|
||||
},
|
||||
};
|
|
@ -0,0 +1,95 @@
|
|||
'use strict';
|
||||
|
||||
const errorOverlayMiddleware = require('react-dev-utils/errorOverlayMiddleware');
|
||||
const noopServiceWorkerMiddleware = require('react-dev-utils/noopServiceWorkerMiddleware');
|
||||
const ignoredFiles = require('react-dev-utils/ignoredFiles');
|
||||
const config = require('./webpack.config.dev');
|
||||
const paths = require('./paths');
|
||||
|
||||
const protocol = process.env.HTTPS === 'true' ? 'https' : 'http';
|
||||
const host = process.env.HOST || '0.0.0.0';
|
||||
|
||||
module.exports = function(proxy, allowedHost) {
|
||||
return {
|
||||
// WebpackDevServer 2.4.3 introduced a security fix that prevents remote
|
||||
// websites from potentially accessing local content through DNS rebinding:
|
||||
// https://github.com/webpack/webpack-dev-server/issues/887
|
||||
// https://medium.com/webpack/webpack-dev-server-middleware-security-issues-1489d950874a
|
||||
// However, it made several existing use cases such as development in cloud
|
||||
// environment or subdomains in development significantly more complicated:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/2271
|
||||
// https://github.com/facebookincubator/create-react-app/issues/2233
|
||||
// While we're investigating better solutions, for now we will take a
|
||||
// compromise. Since our WDS configuration only serves files in the `public`
|
||||
// folder we won't consider accessing them a vulnerability. However, if you
|
||||
// use the `proxy` feature, it gets more dangerous because it can expose
|
||||
// remote code execution vulnerabilities in backends like Django and Rails.
|
||||
// So we will disable the host check normally, but enable it if you have
|
||||
// specified the `proxy` setting. Finally, we let you override it if you
|
||||
// really know what you're doing with a special environment variable.
|
||||
disableHostCheck:
|
||||
!proxy || process.env.DANGEROUSLY_DISABLE_HOST_CHECK === 'true',
|
||||
// Enable gzip compression of generated files.
|
||||
compress: true,
|
||||
// Silence WebpackDevServer's own logs since they're generally not useful.
|
||||
// It will still show compile warnings and errors with this setting.
|
||||
clientLogLevel: 'none',
|
||||
// By default WebpackDevServer serves physical files from current directory
|
||||
// in addition to all the virtual build products that it serves from memory.
|
||||
// This is confusing because those files won’t automatically be available in
|
||||
// production build folder unless we copy them. However, copying the whole
|
||||
// project directory is dangerous because we may expose sensitive files.
|
||||
// Instead, we establish a convention that only files in `public` directory
|
||||
// get served. Our build script will copy `public` into the `build` folder.
|
||||
// In `index.html`, you can get URL of `public` folder with %PUBLIC_URL%:
|
||||
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
// In JavaScript code, you can access it with `process.env.PUBLIC_URL`.
|
||||
// Note that we only recommend to use `public` folder as an escape hatch
|
||||
// for files like `favicon.ico`, `manifest.json`, and libraries that are
|
||||
// for some reason broken when imported through Webpack. If you just want to
|
||||
// use an image, put it in `src` and `import` it from JavaScript instead.
|
||||
contentBase: paths.appPublic,
|
||||
// By default files from `contentBase` will not trigger a page reload.
|
||||
watchContentBase: true,
|
||||
// Enable hot reloading server. It will provide /sockjs-node/ endpoint
|
||||
// for the WebpackDevServer client so it can learn when the files were
|
||||
// updated. The WebpackDevServer client is included as an entry point
|
||||
// in the Webpack development configuration. Note that only changes
|
||||
// to CSS are currently hot reloaded. JS changes will refresh the browser.
|
||||
hot: true,
|
||||
// It is important to tell WebpackDevServer to use the same "root" path
|
||||
// as we specified in the config. In development, we always serve from /.
|
||||
publicPath: config.output.publicPath,
|
||||
// WebpackDevServer is noisy by default so we emit custom message instead
|
||||
// by listening to the compiler events with `compiler.plugin` calls above.
|
||||
quiet: true,
|
||||
// Reportedly, this avoids CPU overload on some systems.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/293
|
||||
// src/node_modules is not ignored to support absolute imports
|
||||
// https://github.com/facebookincubator/create-react-app/issues/1065
|
||||
watchOptions: {
|
||||
ignored: ignoredFiles(paths.appSrc),
|
||||
},
|
||||
// Enable HTTPS if the HTTPS environment variable is set to 'true'
|
||||
https: protocol === 'https',
|
||||
host: host,
|
||||
overlay: false,
|
||||
historyApiFallback: {
|
||||
// Paths with dots should still use the history fallback.
|
||||
// See https://github.com/facebookincubator/create-react-app/issues/387.
|
||||
disableDotRule: true,
|
||||
},
|
||||
public: allowedHost,
|
||||
proxy,
|
||||
before(app) {
|
||||
// This lets us open files from the runtime error overlay.
|
||||
app.use(errorOverlayMiddleware());
|
||||
// This service worker file is effectively a 'no-op' that will reset any
|
||||
// previous service worker registered for the same host:port combination.
|
||||
// We do this in development to avoid hitting the production cache if
|
||||
// it used the same host and port.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/2272#issuecomment-302832432
|
||||
app.use(noopServiceWorkerMiddleware());
|
||||
},
|
||||
};
|
||||
};
|
1907
css/css_min_all.css
3505
css/edu-all.css
|
@ -1,481 +0,0 @@
|
|||
/* 头部 */
|
||||
.header{ width:100%; height:51px;min-width:1200px;background:rgb(23, 22, 22); }
|
||||
.header_con{ width:1200px; min-width:1200px; height:50px; margin:0 auto;}
|
||||
.new-logo img{ width:36px; height:36px;margin-top:7px; border-radius:3px; }
|
||||
.new-logo p{ font-size: 18px; color:#fff; line-height: 50px; }
|
||||
a.new-nav-a{ display: block; font-size: 14px; line-height: 50px; color:#fff;}
|
||||
a:hover.new-nav-a{ color:#ff7500; text-decoration: none;}
|
||||
.header-search{border-radius:3px; background:#fff;}
|
||||
.header-search a{text-decoration: none; color:#666!important;}
|
||||
.header-search a:hover{color:#ff7500!important;}
|
||||
input.header-search-input{ width:150px; height:30px; padding:0 5px; border-style: none; border: none;outline:none;}
|
||||
.innner-nav{ margin-left:40px;}
|
||||
.innner-nav li{float:left; margin-right:40px;}
|
||||
.innner-nav li a{ display: block; color:#fff; padding:0 10px; }
|
||||
.inner-btnbox02{ width:270px; margin: 30px auto 0;}
|
||||
.new-container-inner02{width:1200px; margin:0px auto; padding:50px 0;}
|
||||
.inner-nav-mes{ font-size:16px; color:#fff; margin-right:35px; margin-top:18px; }
|
||||
.inner-nav-cir{ background:#ff6530; color:#fff; border-radius:15px;padding:0 5px; display: inline-block; font-size:10px; height:17px; line-height:17px;}
|
||||
.inner-nav-user{ width: 75px; height: 45px; margin-top:5px; position: relative; padding-left: 0px;}
|
||||
.inner-nav-user-img{ width: 40px; height: 40px; border-radius:50px;}
|
||||
select.header-search-select{ border:none; font-size:14px; padding:5px; background: none;}
|
||||
.edu-unlogin-nav a{ color:#fff!important; font-size:14px; line-height:50px;}
|
||||
.edu-unlogin-nav a:hover{ color:#3b94d6;}
|
||||
.edu-unlogin-nav{ font-size:12px; color:#fff; line-height:50px;}
|
||||
|
||||
.task-user-dropdown{font-size:12px; line-height: 1.9; width:120px; background-color:#fff; border-radius:3px; box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5); position:relative; top:5px; right:44px; display: none; z-index:999;}
|
||||
.task-user-dropdown font{ border: 1px solid #dddddd; display: block; border-width: 8px; position: absolute; top: -13px;left:100px; border-style:solid; border-color: transparent transparent #fff transparent;font-size: 0;line-height: 0; box-shadow:2px rgba(146, 153, 169, 0.5); }
|
||||
.task-user-dropdown-nav { padding-top:5px; }
|
||||
.task-user-dropdown-nav li { display: inline-block; text-align: center; width:100%; height: 30px; line-height: 30px;}
|
||||
.task-user-dropdown-nav li:hover{ background:#eee;}
|
||||
.task-user-dropdown-nav li:hover a{color: #FF7500!important;}
|
||||
.task-line{ display: block; height: 1px!important; line-height: 1px!important; border-bottom:1px solid #eee; margin:0;}
|
||||
.inner-nav-user:hover .task-user-dropdown{ display:block;}
|
||||
dropdown { display: inline-block; height:30px; line-height:1.9; font-size:12px; }
|
||||
dropdown label, dropdown ul li{ display: block; width:42px; padding:4px 10px; text-align: center;border-radius:3px; color:#666;}
|
||||
dropdown ul li:hover{background: #eee; color:#666;cursor: pointer;}
|
||||
dropdown label{color: #666;border-radius: 3px 0 0 3px; position: relative; z-index: 2; width:50px; text-align: center; height:22px;}
|
||||
dropdown input{display: none;}
|
||||
dropdown input:checked + label{ background: #fff;color:#666;}
|
||||
dropdown ul{ position: absolute; visibility: visible; opacity: 1; top: 38px; background: #fff; z-index: 99; border-radius:3px;}
|
||||
$colors: #fff, #0072B5, #2C3E50;
|
||||
@for $i from 1 through length($colors) {
|
||||
dropdown ul li:nth-child(#{$i}) {
|
||||
border-left: 4px solid nth($colors, $i);
|
||||
.fa{
|
||||
color: nth($colors, $i);
|
||||
}
|
||||
&:hover {
|
||||
background: nth($colors, $i);
|
||||
color: white;
|
||||
.fa{
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.edu-dropdown{ position: relative; padding:0 15px; }
|
||||
.edu-dropdown-menu{ background-color:#fff; text-align: center; border-radius:3px; box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5); position:absolute; top:25px; left:0px; z-index: 999; display:none;}
|
||||
.edu-dropdown-menu li{ height:30px; line-height:30px; display: block; padding:0 15px; text-align: left;}
|
||||
.edu-dropdown-menu li label{ cursor: pointer;}
|
||||
.edu-dropdown-menu li:hover{ color: #FF7500!important;}
|
||||
/*.edu-dropdown:hover .edu-dropdown-menu{ display: block;}*/
|
||||
.animate{ -webkit-transition: all .3s; -moz-transition: all .3s; -ms-transition: all .3s; -ms-transition: all .3s;
|
||||
transition: all .3s; backface-visibility:hidden; -webkit-backface-visibility:hidden; /* Chrome and Safari */ -moz-backface-visibility:hidden; /* Firefox */ -ms-backface-visibility:hidden; /* Internet Explorer */}
|
||||
/* 底部 */
|
||||
.footer{width:100%; height:100px; background-color:#fff; }
|
||||
.footer_con{ width:1200px; height:100px; margin:0 auto; text-align: center; padding:20px 0; }
|
||||
.footer_con-inner{ width: 300px; margin:0px auto;}
|
||||
.footer_con-inner li a{ font-size: 16px; color: #888;display: block;padding:0 15px; border-right: solid 1px #888;}
|
||||
.footer_con-inner li a:hover{text-decoration: underline;}
|
||||
.footer_con-p{ color: #888; margin-top:10px;}
|
||||
.inner-footer{ width: 100%; min-width:1200px; background:#323232; padding-bottom:30px;}
|
||||
.inner-footer_con{ width: 1200px; margin: 0 auto;}
|
||||
.inner-footer-nav{ height: 50px; border-bottom:1px solid #47494d;}
|
||||
.inner-footer-nav li a{ float: left; margin-right:15px; font-size: 14px; color: #888; line-height: 50px;}
|
||||
.saoma-box{ position: relative;}
|
||||
.saoma-img-box{ position: absolute; top:-300px; left: -86px; border-radius:3px; background:#fff; padding:15px;box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5); display: none;}
|
||||
.saoma-box li:hover ul{display:block; }
|
||||
.img-show{ width:50px; height:50px; border-radius:50px; }
|
||||
.saoma-img-box font{ border: 1px solid #dddddd; display: block; border-width: 8px; position: absolute; top:289px;left: 103px; border-style:solid; border-color:#fff transparent transparent transparent;font-size: 0;line-height: 0; box-shadow:2px rgba(146, 153, 169, 0.5); }
|
||||
.inner-footer-p-big{ display: block; height: 50px; line-height: 50px; color:#888; font-size: 16px; border-left:2px solid #888; padding-left:15px;}
|
||||
.inner-btnbox02{ width:270px; margin: 30px auto 0;}
|
||||
.new-container-inner02{width:1200px; margin:0px auto; padding:50px 0;}
|
||||
img.edu-footer-logo{ height: 50px;}
|
||||
/************布局 byLB****************/
|
||||
.panel-content{ width: 1200px; margin:20px auto; background:#eaebec;}
|
||||
.panel-contentss{ width: 1200px; margin:10px auto; margin-bottom:20px; background:#fff;}
|
||||
/************讨论区20170321 byLB****************/
|
||||
.panel-inner-fourm{ padding:20px; border-bottom:1px solid #eee;}
|
||||
.panel-inner-fourm:hover{ background:#EFF9FD;}
|
||||
.nobg:hover{ background:#fff;}
|
||||
a.panel-list-title,.panel-list-title { display:inline-block; font-size: 16px; color: #333; font-weight:normal; max-width:82%;}
|
||||
a:hover.panel-list-title{color:#FF7500;}
|
||||
.panel-list-img{ width: 60px; height: 60px; border-radius:100px;}
|
||||
a.panel-name-small{ display: inline-block; max-width:100px; color:#29bd8b; font-size:12px; }
|
||||
.panel-list-infobox{ width: 92%; margin-left:8%; margin-top:-70px;}
|
||||
.panel-lightgrey,.panel-lightgrey span{ font-size:12px; color:#888;}
|
||||
.panel-inner-info{ width: 93%; margin-left:7%;}
|
||||
.panel-bg-grey{ padding:5px 0;background:#f6f6f6; width: 100%; color:#666;}
|
||||
.panel-list-nodata{ width: 420px; margin:100px auto; text-align: center;}
|
||||
|
||||
/*班级讨论区panel 2017/07/20 cs*/
|
||||
.panel-content-box{background: #FFFFFF;}
|
||||
.panel-content-line{width: 90%;margin: 30px 5%;}
|
||||
.panel-content-line .panel-line-left{width: 8%;text-align: right;}
|
||||
.panel-content-line .panel-content-label{height: 40px;line-height: 40px}
|
||||
.panel-content-line .panel-content-input{width: 90%;height: 28px;padding: 5px;}
|
||||
.panel-content-line .panel-content-ta{width: 90%;min-height: 148px;padding: 5px;}
|
||||
/* 回复评论 */
|
||||
.panel-comment_item{ width: 100%; }
|
||||
.panel-comment_item .t_area{ color:#888;}
|
||||
.comment_item_cont{ padding:15px; border-bottom:1px solid #e3e3e3;}
|
||||
.comment_item_cont .J_Comment_Face{height: 50px}
|
||||
.comment_item_cont .J_Comment_Face img{ width:50px; height:50px; border-radius:100px; }
|
||||
.panel-comment_item .t_content{ width:93%; margin-left:15px;}
|
||||
.panel-comment_item a.content-username {font-size:14px; margin-right:15px; display:inline-block; max-width:100px;color: #888888}
|
||||
.J_Comment_Info{height: 20px;line-height: 22px;}
|
||||
/*.panel-comment_item a:hover.content-username{color:#FF7500;}*/
|
||||
.panel-comment_item .orig_user img{width:40px; height:40px;border-radius:100px; }
|
||||
.panel-comment_item .reply-right{ float:right; position:relative;}
|
||||
.panel-comment_item .reply_iconup02{ position:absolute; top:22px; left:14px; color:#d4d4d4; font-size:16px; background:#f1f1f1; line-height:13px;}
|
||||
.panel-comment_item .comment_orig_content{margin:10px 0; color:#999;}
|
||||
.panel-comment_item .comment_orig_content .comment_orig_content{margin-top:0; color:#666;}
|
||||
.panel-comment_item .orig_cont{ border:solid 1px #F3DDB3; background:#FFFEF4; padding:4px;color:#999;margin-top:-1px; }
|
||||
.panel-comment_item .orig_cont_sub{ border-top:0}
|
||||
.panel-comment_item .comment_orig_content .orig_index{ float:right; color:#666; font-family:Arial; padding-right:5px;line-height:30px;}
|
||||
.panel-comment_item .comment_orig_content .orig_user{ margin:10px 15px 10px 5px;}
|
||||
.panel-comment_item .comment_orig_content .orig_user span{ color:#999; padding-right:5px;}
|
||||
.panel-comment_item .comment_orig_content .orig_content{padding:5px 0px 5px 0px;line-height:24px; color:#333; }
|
||||
.panel-comment_item .orig_right{ width:80%; margin-top:5px;}
|
||||
.panel-comment_item .orig_right img{max-width:100%;}
|
||||
.panel-comment_item a.comment_ding_link{ height:24px;line-height:24px;display:inline-block;padding-left:2px;vertical-align:middle; color:#333; }
|
||||
.panel-comment_item a:hover.comment_ding_link{ color:#269ac9;}
|
||||
.panel-comment_item .comment_ding_link span{display: inline-block;padding: 0 0px 0 8px;}
|
||||
.panel-comment_item .comment_ding_link em{font-style: normal;font-family:arial;}
|
||||
.panel-comment_item .comment_reply_link{ display:inline-block; width:50px; height:24px;line-height: 24px; vertical-align:middle;text-align: center;}
|
||||
.panel-comment_item .comment_reply_link:link,.comment_reply_link:visited{color:#333;text-decoration: none;}
|
||||
.panel-comment_item .comment_content{ color:#666;}
|
||||
.comment_content img,.orig_content img{max-width: 100%}
|
||||
.panel-comment_item .t_txt{ margin-top:10px;}
|
||||
.panel-comment_item .orig_reply_box{border-top:1px solid #e3e3e3; width:100%;padding: 15px 0px 0px 0;margin-top: 5px;}
|
||||
.panel-comment_item .orig_textarea{width:90%; margin-bottom:10px;}
|
||||
.panel-comment_item .orig_textarea02{ border:1px solid #ccc; background-color:#fff; width:92%; margin-bottom:10px;}
|
||||
.panel-comment_item .orig_sub{ float:right; background-color:#269ac9; color:#fff; height:25px; line-height:25px; text-align:center; width:80px; border:none;}
|
||||
.panel-comment_item .orig_sub:hover{ background:#297fb8;}
|
||||
.panel-comment_item .orig_cont_hide{ text-align:center; width:100%; display:block; font-size:14px; color:#666; border-bottom:1px solid #F3DDB3; padding:8px 0;}
|
||||
.panel-comment_item .orig_icon{ color:#888; margin-right:10px; font-size:14px; font-weight:bold;}
|
||||
.orig_reply{ font-size: 12px; }
|
||||
.panel-mes-head{ padding:10px; border-bottom:1px solid #eee;}
|
||||
.homepagePostReplyPortrait a img{border-radius: 100px;}
|
||||
/* 表格 */
|
||||
.panel-new-table { width:100%; text-align: center; }
|
||||
.panel-new-table tr th{ color:#333; height: 50px;line-height:50px; }
|
||||
.panel-new-table tr th,.panel-new-table tr td{ border-bottom:1px solid #eee; }
|
||||
.panel-new-table tr td{color:#666; height: 40px; line-height:40px;}
|
||||
.panel-table-pd15 tr td{ padding:15px 0;}
|
||||
.panel-new-table tbody tr:hover{ background:#f9f9f9;}
|
||||
a.panel-table-name{display:block; max-width:100px;text-align:center;}
|
||||
a.panel-table-title{display:block; max-width:240px;text-align:center;}
|
||||
.table-num{ width:5%; text-align: center;}
|
||||
/* 滑动条 */
|
||||
.panel-slider-bg{ width:240px; height: 15px; border-radius:15px; background:#f1f2f7; }
|
||||
.panel-slider-inner00{ display:block; width:0%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner01{ display:block; width:10%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner02{ display:block; width:20%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner03{ display:block; width:30%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner04{ display:block; width:40%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner05{ display:block; width:50%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner06{ display:block; width:60%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner07{ display:block; width:70%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner08{ display:block; width:80%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner09{ display:block; width:90%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
.panel-slider-inner10{ display:block; width:100%; height: 15px; border-radius:15px; background:#29bd8b;}
|
||||
/* 翻页 */
|
||||
.panel-pages a{ display: inline-block; border:1px solid #d1d1d1; color:#888; float:left;text-align:center; padding:0 10px; margin-right:5px; height: 30px; line-height: 30px; }
|
||||
.panel-pages a:hover,.panel-pages .active{ background-color:#29bd8b; border:1px solid #29bd8b;color:#fff; }
|
||||
.panel-pages{ width: 350px; margin:20px auto;}
|
||||
/* 翻页*/
|
||||
.pages_right_min a{ display: inline-block;border:1px solid #d1d1d1; color:#888!important; float:left;text-align:center; padding:3px 10px; line-height:1.9; margin: 0 5px;}
|
||||
.pages_right_min a.pages-border-right{border-right:1px solid #d1d1d1; }
|
||||
.pages_right_min a:hover,.pages_right_min a.active{ background-color:#FC7033; color:#fff!important;border:1px solid #FC7033}
|
||||
.pages_right_min li{float: left;}
|
||||
/* 个人主页翻页 */
|
||||
.pages_user_show a:hover,.pages_user_show a.active{ background-color:#FC7033;; color:#fff;border: 1px solid #FC7033;}
|
||||
.pages_user_show a{ display: inline-block;border:1px solid #d1d1d1; color:#888; float:left;text-align:center; padding:3px 10px; line-height:1.9; margin: 0 5px;}
|
||||
.pages_user_show li{float: left; list-style-type: none;}
|
||||
.pages_user_show ul li{list-style-type: none !important;}
|
||||
.pages_user_show ul li a{color:#888}
|
||||
/* 小翻页 */
|
||||
.pages_little_show a:hover,.pages_little_show a.active{ background-color:#FC7033;; color:#fff!important;border:1px solid #FC7033}
|
||||
.pages_little_show a{ display: inline-block;border:1px solid #d1d1d1; color:#888!important; float:left;text-align:center; padding:3px 3px; line-height:1.9; margin: 0 2px; font-size: 12px;}
|
||||
.pages_little_show li{float: left;}
|
||||
/* 搜索*/
|
||||
.panel-search{ position: relative;}
|
||||
input.panel-search-input{ height: 30px; width:300px; color: #666;}
|
||||
.panel-search-btn{ position: absolute; top:2px; right:10px;}
|
||||
/* 表单*/
|
||||
.label-w20{ width:20%!important;}
|
||||
.panel-form-label{ display:inline-block; width:10%; min-width:90px; text-align:right; line-height:40px; font-weight: normal; }
|
||||
.panel-form input,.panel-form textarea,.panel-form select{ border:1px solid #e2e2e2;color:#666;line-height: 1.9; background:#fff;}
|
||||
.panel-box-sizing{-moz-box-sizing: border-box; /*Firefox3.5+*/-webkit-box-sizing: border-box; /*Safari3.2+*/-o-box-sizing: border-box; /*Opera9.6*/-ms-box-sizing: border-box; /*IE8*/box-sizing: border-box; border-radius:3px;}
|
||||
input.panel-form-width-690{ padding:5px;width:90%; height:40px; }
|
||||
input.panel-form-width-100{ padding:5px;width:100%; height:40px;}
|
||||
input.panel-form-width-45{ padding:5px;width:44.5%; height:40px; }
|
||||
input.panel-form-width-50{ padding:5px;width:44.5%; height:25px; }
|
||||
input.panel-form-width-60{ padding:5px;width:60%; height:40px; }
|
||||
textarea.panel-form-width-100{ padding:5px;width:100%; height:150px; }
|
||||
textarea.panel-form-width-690{ padding:5px;width:90%; height:150px; }
|
||||
.panel-form-width-670{ width: 670px; padding:5px;}
|
||||
.panel-form-height-150{ height: 150px;}
|
||||
.panel-form-height-30{height: 30px;}
|
||||
.task-bg-grey{ background:#f3f3f3; width:90%; min-width:700px; padding:10px; border:1px solid #f3f3f3; color:#888;}
|
||||
.task-bg-grey02{ background:#f3f3f3; width:80%; min-width:700px; padding:7px 10px; border:1px solid #f3f3f3; color:#888;}
|
||||
|
||||
input.task-form-10,textarea.task-form-10,select.task-form-10,.task-form-10{padding:5px;width:10%;box-sizing: border-box}
|
||||
input.task-form-15,textarea.task-form-15,select.task-form-15,.task-form-15{padding:5px;width:15%;box-sizing: border-box}
|
||||
input.task-form-20,textarea.task-form-20,select.task-form-20,.task-form-20{padding:5px;width:20%;box-sizing: border-box}
|
||||
input.task-form-30,textarea.task-form-30,select.task-form-30,.task-form-30{padding:5px;width:30%;box-sizing: border-box}
|
||||
input.task-form-35,textarea.task-form-35,select.task-form-35,.task-form-35{padding:5px;width:35%;box-sizing: border-box}
|
||||
input.task-form-40,textarea.task-form-40,select.task-form-40,.task-form-40{padding:5px;width:40%;box-sizing: border-box}
|
||||
input.task-form-45,textarea.task-form-45,select.task-form-45,.task-form-45{padding:5px;width:45%;box-sizing: border-box}
|
||||
input.task-form-50,textarea.task-form-50,select.task-form-50,.task-form-50{padding:5px;width:50%;box-sizing: border-box}
|
||||
input.task-form-60,textarea.task-form-60,select.task-form-60,.task-form-60{padding:5px;width:60%;box-sizing: border-box}
|
||||
input.task-form-70,textarea.task-form-70,select.task-form-70,.task-form-70{padding:5px;width:70%;box-sizing: border-box}
|
||||
input.task-form-80,textarea.task-form-80,select.task-form-80,.task-form-80{padding:5px;width:80%;box-sizing: border-box}
|
||||
input.task-form-90,textarea.task-form-90,select.task-form-90,.task-form-90{padding:5px;width:90%;box-sizing: border-box}
|
||||
input.task-form-100,textarea.task-form-100,select.task-form-100,.task-form-100{padding:5px;width:100%;}
|
||||
input.task-height-40,textarea.task-height-40,.task-height-40,select.task-height-40{height:40px;}
|
||||
input.task-height-30,textarea.task-height-30,.task-height-30,select.task-height-30{height:32px;}
|
||||
input.task-height-220,textarea.task-height-220,.task-height-220{height:220px;}
|
||||
input.task-height-150,textarea.task-height-150,.task-height-150{height:150px;}
|
||||
input.task-height-100,textarea.task-height-100,.task-height-100{height:100px;}
|
||||
input.task-height-80,textarea.task-height-80,.task-height-80{height:80px;}
|
||||
|
||||
/*头像下拉弹框*/
|
||||
.my_account_info{ width:160px; background-color:#fff; border-radius: 3px; box-shadow: 0px 2px 8px rgba(146, 153, 169, 0.5); position:absolute; font-size: 14px; top:46px; left:-97px;display: none; z-index:999;}
|
||||
.my_account_info li a{ color: #888;}
|
||||
.my_account_info font{ border: 1px solid #dddddd; display: block; border-width: 8px; position: absolute; top: -15px;left: 140px; border-style:solid; border-color: transparent transparent #fff transparent;font-size: 0;line-height: 0; box-shadow:2px rgba(146, 153, 169, 0.5); }
|
||||
.my_account_info li{ padding-left: 5px; line-height: 1.5;}
|
||||
.li_bottom_border{ border-bottom:1px solid #eee;}
|
||||
a.task-index-name{ display: inline-block; max-width:80px;}
|
||||
.task-index-name{ display: inline-block; max-width:80px;}
|
||||
|
||||
/*滑块验证*/
|
||||
.drag_slider{ position: relative; background-color: #e8e8e8; width:100%; height: 45px; line-height: 45px; text-align: center;border-radius: 4px;}
|
||||
.drag_slider .handler{ border-radius: 4px 0px 0px 4px;position: absolute; top: 0px; left: 0px; width: 50px; height: 43px; border: 1px solid #eee; cursor: move;}
|
||||
.handler_bg{ background: #fff url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTEyNTVEMURGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTEyNTVEMUNGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MTc5NzNmZS02OTQxLTQyOTYtYTIwNi02NDI2YTNkOWU5YmUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+YiRG4AAAALFJREFUeNpi/P//PwMlgImBQkA9A+bOnfsIiBOxKcInh+yCaCDuByoswaIOpxwjciACFegBqZ1AvBSIS5OTk/8TkmNEjwWgQiUgtQuIjwAxUF3yX3xyGIEIFLwHpKyAWB+I1xGSwxULIGf9A7mQkBwTlhBXAFLHgPgqEAcTkmNCU6AL9d8WII4HOvk3ITkWJAXWUMlOoGQHmsE45ViQ2KuBuASoYC4Wf+OUYxz6mQkgwAAN9mIrUReCXgAAAABJRU5ErkJggg==") no-repeat center;}
|
||||
.handler_ok_bg{ background: #fff url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDlBRDI3NjVGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDlBRDI3NjRGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDphNWEzMWNhMC1hYmViLTQxNWEtYTEwZS04Y2U5NzRlN2Q4YTEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+k+sHwwAAASZJREFUeNpi/P//PwMyKD8uZw+kUoDYEYgloMIvgHg/EM/ptHx0EFk9I8wAoEZ+IDUPiIMY8IN1QJwENOgj3ACo5gNAbMBAHLgAxA4gQ5igAnNJ0MwAVTsX7IKyY7L2UNuJAf+AmAmJ78AEDTBiwGYg5gbifCSxFCZoaBMCy4A4GOjnH0D6DpK4IxNSVIHAfSDOAeLraJrjgJp/AwPbHMhejiQnwYRmUzNQ4VQgDQqXK0ia/0I17wJiPmQNTNBEAgMlQIWiQA2vgWw7QppBekGxsAjIiEUSBNnsBDWEAY9mEFgMMgBk00E0iZtA7AHEctDQ58MRuA6wlLgGFMoMpIG1QFeGwAIxGZo8GUhIysmwQGSAZgwHaEZhICIzOaBkJkqyM0CAAQDGx279Jf50AAAAAABJRU5ErkJggg==") no-repeat center;}
|
||||
.drag_slider .drag_bg{ background-color: #29bd8b; height: 45px; width: 0px;}
|
||||
.drag_slider .drag_text{border-radius: 4px 0px 0px 4px;position: absolute; top: 0px; width: 100%; -moz-user-select: none; -webkit-user-select: none; user-select: none; -o-user-select:none; -ms-user-select:none;}
|
||||
|
||||
|
||||
/*新建新增*/
|
||||
/*.edu-con-top{ padding:10px 0; background:#fff; border-bottom:1px solid #eee;font-size:16px; }*/
|
||||
/*.edu-con-top h2{ font-size:16px;}*/
|
||||
/*.edu-con-bg01{ width: 100%; background:#fff;}*/
|
||||
/*.edu-con-top .color-grey{ color:#666!important;}*/
|
||||
|
||||
/*附件上传的样式*/
|
||||
.atta_input{ width: 980px; white-space: nowrap; text-overflow:ellipsis;}
|
||||
|
||||
/*作业描述、帖子内容*/
|
||||
.upload_img img{max-width: 100%;}
|
||||
.table_maxWidth table {max-width: 642px;}
|
||||
.list_style ol li{list-style-type: decimal;margin-left: 40px;}
|
||||
.list_style ul li{list-style-type: disc;margin-left: 40px;}
|
||||
|
||||
/*数据为空公共页面*/
|
||||
img.edu-nodata-img{ width:200px; margin:50px auto 20px; display: block;}
|
||||
.edu-nodata-p{ font-size: 16px; text-align: center; color:#888;border-bottom:none!important;}
|
||||
|
||||
/* new tab */
|
||||
.edu-tab{ width: 100%; background:#fff;}
|
||||
#edu-tab-nav{height:47px;background: #fff;}
|
||||
#edu-tab-nav li.new-tab-nav {float:left; width: 150px; text-align:center;height:48px;line-height:48px;border-top-right-radius:5px;border-top-left-radius:5px; }
|
||||
#edu-tab-nav li a{font-size:14px; }
|
||||
#edu-user-tab-nav{height:40px;background: #fff; border-bottom:2px solid #FC7033;}
|
||||
#edu-user-tab-nav li.new-tab-nav {float:left; width: 120px; text-align:center;height:42px;line-height:42px;border-top-left-radius: 5px;border-top-right-radius:5px}
|
||||
#edu-user-tab-nav li a{font-size:14px; }
|
||||
.edu-new-tab-hover { background:#5faee3; }
|
||||
.edu-user-tab-hover{background:#FC7033;}
|
||||
.edu-user-tab-hover a{color:#fff!important;}
|
||||
.edu-new-tab-hover a{color:#fff!important;}
|
||||
.edu-class-con-list:hover{ background:#EFF9FD;}
|
||||
.edu-bg-shadow{box-shadow: 0px 0px 5px rgba(146, 153, 169, 0.2);}
|
||||
a.task-btn-line{display: inline-block;font-weight: bold;padding: 0 12px;color: #666;background: #fff;letter-spacing: 1px;text-align: center;font-size: 14px;height: 30px;line-height: 30px;border-radius: 3px; border:1px solid #ccc;}
|
||||
a:hover.task-btn-line{ border:1px solid #3498db;background:#3498db;color: #fff;}
|
||||
|
||||
/*阴影*/
|
||||
.user_bg_shadow{-webkit-box-shadow: 0 0 8px 0 rgba(142,142,142,.1);-moz-box-shadow: 0 0 8px 0 rgba(142,142,142,.1);box-shadow: 0 0 8px 0 rgba(142,142,142,.1);}/*四边阴影*/
|
||||
.user_bg_shadow_notop{-webkit-box-shadow: 0 3px 8px 0 rgba(142,142,142,.1);-moz-box-shadow: 0 3px 8px 0 rgba(142,142,142,.1);box-shadow: 0 3px 8px 0 rgba(142,142,142,.1);}/*没有上边阴影*/
|
||||
/*阴影+边框*/
|
||||
.shadow_border{border:1px solid #eee;-webkit-box-shadow: 0 0 8px 0 rgba(142,142,142,.1);-moz-box-shadow: 0 0 8px 0 rgba(142,142,142,.1);box-shadow: 0 0 8px 0 rgba(142,142,142,.1);}
|
||||
.shadow_border_notop{border:1px solid #eee;-webkit-box-shadow: 0 3px 8px 0 rgba(142,142,142,.1);-moz-box-shadow: 0 3px 8px 0 rgba(142,142,142,.1);box-shadow: 0 3px 8px 0 rgba(142,142,142,.1);}
|
||||
.user_bg_shadow01{-webkit-box-shadow: 0 1px 2px 2px rgba(123, 123, 123, 0.15);-moz-box-shadow: 0 1px 2px 2px rgba(123, 123, 123, 0.15);box-shadow: 0 1px 2px 2px rgba(123, 123, 123, 0.15);}
|
||||
.user_bg_shadow02{-webkit-box-shadow: 0 2px 8px 0 rgba(123, 123, 123, 0.15);-moz-box-shadow: 0 2px 8px 0 rgba(123, 123, 123, 0.15);box-shadow: 0 2px 8px 0 rgba(123, 123, 123, 0.15);}
|
||||
.box_bg_shandow {box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15);}
|
||||
|
||||
/*新增的公用样式*/
|
||||
.box-boxshadow{box-shadow: 3px 3px 10px rgba(146, 153, 169, 0.2);}
|
||||
.prop-notice-info{padding: 10px;border:1px solid #F3DDB3;background-color: #FFFEF4;}
|
||||
.prop-notice-info ol{list-style-type: disc;list-style-position:inside}
|
||||
.prop-notice-info ol li{list-style-type: disc;color: #ff6532;margin-bottom:0!important;}
|
||||
|
||||
/*input框移出后没有内容将边框阴影变为红色*/
|
||||
.notinput_bg_shadow{border: none;box-shadow: 0px 0px 4px rgba(227,53,37,1);}
|
||||
/*设置input框的placehoder的字体颜色*/
|
||||
input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color: #cccccc}
|
||||
input::-moz-placeholder,textarea::-moz-placeholder { color:#cccccc;}
|
||||
input::-moz-placeholder,textarea::-moz-placeholder { color:#cccccc;}
|
||||
input::-ms-input-placeholder,textarea::-ms-input-placeholder {color:#cccccc;}
|
||||
/*班级讨论区置顶的样式*/
|
||||
.btn-cir {display: inline-block;padding: 0px 5px;border-radius: 25px;line-height: 20px;font-size: 12px;}
|
||||
.btn-cir:hover{background:#fff;color:#333333}.all_work_border{border: 1px solid #4c515d;}/*TPI全部任务的数量需要加一个边框*/
|
||||
.btn-cir-grey{background: #e1e1e1;color: #8c8c8c;font-weight: normal;border: 1px solid #e1e1e1}
|
||||
.btn-cir-red{background:red;color: #fff; font-weight: normal;}
|
||||
.btn-cir-red:hover{background:red;}
|
||||
.btn-cir-orange {background: #ff7500; color: #fff; font-weight: normal;border: 1px solid #ff7500}
|
||||
.btn-top{display: inline-block;padding: 0px 5px;line-height: 20px;font-size: 12px;border-radius: 3px;}
|
||||
.btn-cir-big{ background: #999;color: #fff;display: inline-block; padding:0px 10px; border-radius:25px; line-height:25px; height: 25px; font-size:12px;}
|
||||
/*圆形绿色背景---------22*/
|
||||
.panel-inner-icon{width: 22px;height: 22px;line-height: 22px;border-radius: 50%;background: #29bd8b;display: block;text-align: center}
|
||||
.panel-inner-icon{width: 22px;height: 22px;line-height: 22px;border-radius: 50%;background: #29bd8b;display: block;text-align: center}
|
||||
/*圆形绿色背景------------------18*/
|
||||
.panel-inner-icon18{width: 18px;height: 18px;line-height: 18px;border-radius: 50%;background: #29bd8b;display: block;text-align: center}
|
||||
|
||||
/*---------------块右上角的三角形,颜色为浅橙色*/
|
||||
.triangle-topright {position: absolute;right: -1px;top:0px;width: 0;height: 0;border-top: 35px solid #FF9E6A;border-left: 60px solid transparent;z-index: 1}
|
||||
.triangle-font{position: absolute;right: 1px;top: 2px;z-index: 2;font-size: 12px;color: white;transform: rotate(31deg);}
|
||||
.triangle-font2{position: absolute;right: 1px;top: -5px;z-index: 2;font-size: 12px;color: white;transform: rotate(31deg);}
|
||||
|
||||
/* colorbox
|
||||
*******************************************************************************/
|
||||
/*
|
||||
Colorbox Core Style:
|
||||
The following CSS is consistent between example themes and should not be altered.
|
||||
*/
|
||||
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:99999; overflow:hidden;}
|
||||
#cboxWrapper {max-width:none;}
|
||||
#cboxOverlay{position:fixed; width:100%; height:100%;}
|
||||
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
|
||||
#cboxContent{position:relative;}
|
||||
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
|
||||
#cboxTitle{margin:0;}
|
||||
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
|
||||
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
|
||||
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
|
||||
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
|
||||
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
|
||||
|
||||
/*
|
||||
User Style:
|
||||
Change the following styles to modify the appearance of Colorbox. They are
|
||||
ordered & tabbed in a way that represents the nesting of the generated HTML.
|
||||
*/
|
||||
#cboxOverlay{background:#fff;}
|
||||
#colorbox{outline:0;}
|
||||
#cboxTopLeft{width:25px; height:25px; background:url(/images/colorbox/border1.png) no-repeat 0 0;}
|
||||
#cboxTopCenter{height:25px; background:url(/images/colorbox/border1.png) repeat-x 0 -50px;}
|
||||
#cboxTopRight{width:25px; height:25px; background:url(/images/colorbox/border1.png) no-repeat -25px 0;}
|
||||
#cboxBottomLeft{width:25px; height:25px; background:url(/images/colorbox/border1.png) no-repeat 0 -25px;}
|
||||
#cboxBottomCenter{height:25px; background:url(/images/colorbox/border1.png) repeat-x 0 -75px;}
|
||||
#cboxBottomRight{width:25px; height:25px; background:url(/images/colorbox/border1.png) no-repeat -25px -25px;}
|
||||
#cboxMiddleLeft{width:25px; background:url(/images/colorbox/border2.png) repeat-y 0 0;}
|
||||
#cboxMiddleRight{width:25px; background:url(/images/colorbox/border2.png) repeat-y -25px 0;}
|
||||
#cboxContent{background:#fff; overflow:hidden;}
|
||||
.cboxIframe{background:#fff;}
|
||||
#cboxError{padding:50px; border:1px solid #ccc;}
|
||||
#cboxLoadedContent{margin-bottom:20px;}
|
||||
#cboxTitle{position:absolute; bottom:0px; left:0; text-align:center; width:100%; color:#999;}
|
||||
#cboxCurrent{position:absolute; bottom:0px; left:100px; color:#999;}
|
||||
#cboxLoadingOverlay{background:#fff url(/images/colorbox/loading.gif) no-repeat 5px 5px;}
|
||||
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
|
||||
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
|
||||
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
|
||||
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
|
||||
#cboxSlideshow{position:absolute; bottom:0px; right:42px; color:#444;}
|
||||
#cboxPrevious{position:absolute; bottom:0px; left:0; color:#444;}
|
||||
#cboxNext{position:absolute; bottom:0px; left:63px; color:#444;}
|
||||
#cboxClose{position:absolute; bottom:0; right:0; display:block; color:#444;}
|
||||
|
||||
/*-----下拉框--------*/
|
||||
.down-select{display:none;position: absolute;z-index: 10;left: 0px;width: 100%;overflow-y: auto;background: #fff;max-height: 200px;}
|
||||
.down-select p{height: 35px;line-height: 35px;padding-left: 5px;}
|
||||
.down-select p:hover{background: #f3f4f6}
|
||||
|
||||
/*课程、实训的条状样式*/
|
||||
.homepage-list-show p{height:70px;line-height:70px;}
|
||||
.homepage-list-show p:nth-child(odd){background:#fafbfb;}
|
||||
.homepage-list-show p .first{width:58%;display:inline-block;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
|
||||
.homepage-list-show p .hasmargin{width:23%;display:inline-block;text-align: center;color:#888;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
|
||||
.homepage-list-show p .haspadding{width:16.7%;display:inline-block;margin-right:12%;color:#888;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
|
||||
.homepage-list-show p .last{width:8.33%;display:inline-block;color:#888;cursor: pointer; display: none;}
|
||||
.homepage-list-show p .last:hover{color:#5faee3;}
|
||||
.homepage-list-show p .last:hover .blue{color:#5faee3;}
|
||||
|
||||
/*-----课程名称下拉框--------*/
|
||||
.course_list_ul,.down-list{ overflow-y: scroll;display: none;position: absolute;top:40px;left: -1px;width: 100% !important;border:1px solid #eeeeee;background: #FFFFFF;max-height: 150px;z-index: 10}
|
||||
.course_list_ul li{height:20px;padding:5px 10px;clear:both;line-height:28px;margin-bottom: 0 !important;cursor: pointer;}
|
||||
.down-list li{text-align: left;outline: none;padding: 5px 10px;clear: both;line-height: 22px!important;margin-bottom: 0 !important;cursor: pointer;width: 100%;box-sizing: border-box;height: 30px;border: none!important;}
|
||||
.down-list li:hover{background: #eee}
|
||||
.down-list{top:32px}
|
||||
.unit-part{border:1px solid #ccc;padding: 0px 8px;border-radius: 5px;margin-right: 10px}
|
||||
.unit-part input{border: none!important;text-align: left;width:auto;outline: none}
|
||||
/*-----试卷提交状态--------*/
|
||||
.post_status_btn{display: block;float: left;padding: 0px 5px;font-size: 12px;color: #FFFFFF;border-radius: 4px;height: 20px;line-height: 20px;;}
|
||||
.post_btn_green{background: #29bd8b;border: 1px solid #29bd8b!important;color: #fff;}
|
||||
.post_btn_green_q{background: #5ECFBA;border: 1px solid #5ECFBA!important;color: #fff;}
|
||||
.post_btn_orange{background: #FF7500;border: 1px solid #FF7500!important;color: #fff;}
|
||||
.post_btn_red{background: #ee4a1f;border: 1px solid #ee4a1f!important;color: #fff;}
|
||||
.post_btn_grey{background: #e4e4e3;border: 1px solid #e4e4e3!important;}
|
||||
.post_btn_white{background: #ffffff;}
|
||||
/*评阅状态*/
|
||||
.checkstatus_box_small{width: 10px;height: 10px;display: block;float: left;margin-right: 3px;}
|
||||
.checkstatus_box_big{cursor: default;width: 30px;height: 30px;line-height: 30px;text-align: center;margin-right: 10px;border:1px solid #CCCCCC;display: block;float: left;margin-bottom: 10px}
|
||||
.checkstatus_box_big i{position: absolute;top:18px;left: 10px;}
|
||||
|
||||
/*个人主页头部认证圆形背景*/
|
||||
.user-info-span{border-radius: 50%;float:left;background: #F3F5F7;text-align: center;width: 23px;height: 23px;line-height: 23px;margin-top: 3px;margin-right: 5px}
|
||||
|
||||
/*试卷答题倒计时*/
|
||||
.time_panel span.factorial{float: left;display: block;line-height: 35px;padding: 0px 3px;}
|
||||
.time_panel span.time{float: left;display: block;color: #ffffff;background-color: #333333;font-size: 16px;border-radius: 5px;letter-spacing: 1px;width: 33px;text-align: center;line-height: 35px;height: 35px;}
|
||||
|
||||
.hidemsg{overflow: hidden;cursor: pointer}
|
||||
.hidemsg div{
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
margin: auto;
|
||||
opacity:0.4;
|
||||
background-color: #ffffff;
|
||||
-webkit-border-radius: 100%;
|
||||
-moz-border-radius: 100%;
|
||||
-o-border-radius: 100%;
|
||||
-ms-border-radius: 100%;
|
||||
-webkit-animation-fill-mode: both;
|
||||
-moz-animation-fill-mode: both;
|
||||
-ms-animation-fill-mode: both;
|
||||
-o-animation-fill-mode: both;
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
-webkit-animation: ball-scale 1s 0s ease-in-out infinite;
|
||||
-moz-animation: ball-scale 1s 0s ease-in-out infinite;
|
||||
-ms-animation: ball-scale 1s 0s ease-in-out infinite;
|
||||
-o-animation: ball-scale 1s 0s ease-in-out infinite;
|
||||
animation: ball-scale 1s 0s ease-in-out infinite;
|
||||
}
|
||||
@keyframes ball-scale{
|
||||
0%{width: 0px;height: 0px}
|
||||
100%{width: 80px;height: 80px}
|
||||
}
|
||||
|
||||
/*-------------------个人主页关注和粉丝列表改版 以及TPM合作者部分改版 2018/01/15-------------------------*/
|
||||
.-task-con-int .favour .fens-table-list{display: flex;width:21.29%;margin:0px 1.5% 1.5% 0px;min-height: 125px;border: 1px solid #EEEEEE;padding: 10px;background: #f9fbfd}
|
||||
.-task-con-int .favour .fens-table-list:nth-child(4n+1){margin:0px 1.5% 1.5% 1.5%;}
|
||||
.-task-con-int .favour .fens-table-list .touxiang{border-radius: 50%;overflow: hidden;}
|
||||
.white-icon-ring{width: 25px;height: 25px;background: #ffffff;border-radius: 50%;text-align: center;line-height: 25px;}
|
||||
a.btn-focus{display: block;width:80px;height: 35px;line-height: 35px;border-radius: 4px;border:1px solid #EEEEEE;text-align: center;cursor: pointer;background: #ffffff}
|
||||
a.btn-focus:hover{color: #FFFFFF!important;background:#FC7033;border: 1px solid #FC7033 }
|
||||
.fans-name{max-width: 100px;word-break: break-all;overflow: hidden;height: 26px;text-overflow: ellipsis;white-space: nowrap;}
|
||||
.school-name{max-width: 196px;word-break: break-all;overflow: hidden;height: 26px;text-overflow: ellipsis;white-space: nowrap;}
|
||||
|
||||
.fans_del{position: absolute;right: 12px;top: 12px;cursor: pointer;
|
||||
text-align: center;}
|
||||
.fans_del i{color: #b5b5b5}
|
||||
.fans_del:hover i{color: #ff7500!important;}
|
||||
|
||||
.-task-con-int .favour .p2{line-height:90px;text-align:center;}
|
||||
.-task-con-int .favour .p2:hover .changecolor{color:#5faee3;}
|
||||
.-task-con-int .favour .fens{position:relative;}
|
||||
.-task-con-int .favour .fens .many{position:absolute;right:22px;top:-35px;}
|
||||
.-task-con-int .favour .fens .list{width:100px;text-align:center;padding-top:5px;}
|
||||
.-task-con-int .favour .fens .list dt{margin:20px;margin-bottom:5px;}
|
||||
.-task-con-int .favour .fens .touxiang{border-radius:28px;overflow:hidden;}
|
||||
|
||||
/*选择实训的弹框*/
|
||||
.shixun_work_div{overflow-y: auto;max-height: 90px;}
|
1304
css/iconfont.css
|
@ -1,524 +0,0 @@
|
|||
/************新版公共****************/
|
||||
/************新版公共****************/
|
||||
html{height:100%;}
|
||||
/*.newContainer{ min-height:100%; height: auto !important; height: 100%; position: relative;}
|
||||
.newMain{ margin: 0 auto; padding-bottom: 155px; }
|
||||
.newFooter{ position: absolute; bottom: 0; width: 100%; height: 155px;background: #323232; clear:both; min-width: 1200px}
|
||||
.newHeader{background: #46484c;width:100%; height: 50px; min-width: 1200px}*/
|
||||
.w20_center{ width: 20px;text-align: center; }
|
||||
.task-container{ min-width:1300px; margin:0 auto; background: #f5f9fc; position: relative;}
|
||||
/*左侧导航*/
|
||||
.leftbar{ height: 100%; background: #1f212d; width:80px;}
|
||||
.user-info{ width:80px; height:100px; padding-top:15px;}
|
||||
a.user-info-img{ display: block; width: 50px; height: 50px; margin:0 auto; }
|
||||
a.user-info-img img{border-radius:100px;border:2px solid #666;}
|
||||
a.user-info-img img:hover{border:2px solid #888;}
|
||||
a.user-info-name{ display: block; font-size: 16px; color: #fff; max-width:100px; margin: 10px auto; text-align: center; overflow: hidden;white-space: nowrap;text-overflow: ellipsis;}
|
||||
.leftnav-box{ width: 80px; height: 60px; background:#292b3a; padding:10px 0; margin-bottom:2px;}
|
||||
a.leftnav-box-inner{ display: block; width:77px; border-left:3px solid #292b3a; background:#292b3a; text-align: center; padding:10px 0; color:#575f6c;}
|
||||
a:hover.leftnav-box-inner,a.leftnav-active{border-left:3px solid #3498db;color: #fff!important;}
|
||||
a:hover.leftnav-box-inner .btn-cir{background:#fff;color:#333333}
|
||||
a.leftnav-box-reset-inner{ display: block; width:77px; border-left:3px solid #292b3a; background:#292b3a; text-align: center; color:#575f6c;}
|
||||
a:hover.leftnav-box-reset-inner{border-left:3px solid #3498db;color: #fff!important;}
|
||||
|
||||
|
||||
|
||||
/*右侧头部*/
|
||||
.rightbar-header{width: 100%; background:#282c37; height:60px; min-width:1000px;}
|
||||
.rightbar-score{ margin-top: 17px; font-size: 14px; margin-right:20px;}
|
||||
.rightbar-score li{ float: left; color:#fff; margin-right: 20px;}
|
||||
.rightbar-score li a{ color:#fff;}
|
||||
a.rightbar-pause{ color:#29bd8b; font-size: 18px; margin-right:15px; margin-top: 12px;}
|
||||
.rightbar-h2{ color:#fff; margin:12px 0 0 20px; font-weight: normal;}
|
||||
.rightbar{background:#f5f9fc; color:#333; position: relative;}
|
||||
/*右侧内容*/
|
||||
.content{ min-width:1000px; }
|
||||
.content-row{ padding:15px; }
|
||||
.content-info{ width:49.5%; min-width:250px;}
|
||||
.content-editor{ width:49.3%; min-width:250px; margin-left:15px; }
|
||||
.panel-header{ border-bottom:1px solid #eee; padding:10px 15px; color:#898989;}
|
||||
.panel-header-border{ border:1px solid #eee; padding:10px 15px; border-bottom:none; }
|
||||
/* tab */
|
||||
.tab_content{ width: 100%; margin: 0 auto; background:#fff; }
|
||||
#tab_nav {height:42px;background: #fff; border-bottom: 1px solid #EEEEEE}
|
||||
#tab_nav li {float:left; padding:0 30px;text-align:center;height: 40px;line-height: 40px; }
|
||||
#tab_nav li a{font-size:14px; }
|
||||
.tab_hover {border-bottom:2px solid #3498db; background: #fff;color: #3498db}
|
||||
/*.tab_hover_setting{background:#FC7033;}*/
|
||||
.tab_hover a{ color:#3498db!important;}
|
||||
/*.tab_hover_setting a{color:#fff;}*/
|
||||
.undis {display:none;}
|
||||
.dis {display:block;}
|
||||
.tab-info{ }
|
||||
.content-editor-inner{ overflow:auto;}
|
||||
.tab-info-inner{ overflow:auto; height:600px; margin:0 0 0px 15px;padding-top: 15px}
|
||||
.content-history-inner{height:120px; overflow:auto; padding:15px;}
|
||||
.content-history{width:48.7%; min-width:500px; }
|
||||
.history-success{ width: 100%; height:40px; line-height: 40px; background:#eef1f2; color:#666; }
|
||||
.history-fail{ width: 100%; height:40px; line-height: 40px; background:#fdebeb; color:#e53238; }
|
||||
.icon-fail{ display:inline-block; padding:0 8px; background:#e53238; color:#fff;}
|
||||
.icon-success{ display:inline-block; padding:0 8px; background:#252e38; color:#fff;}
|
||||
.info-partly{display: block;box-flex:1;flex:1;-webkit-flex:1;position: relative;}
|
||||
.content-output{width:37.5%; min-width:200px; }
|
||||
.content-submit{width:10%; min-width:135px; }
|
||||
.content-submitbox{ width:120px; margin: 15px auto; height:135px;}
|
||||
.panel-inner{ background:#EFF2F7; margin:15px; padding:15px;}
|
||||
.panel-inner-title{ font-size: 14px; color: #666; max-width:85%; line-height:30px;word-wrap: break-word; margin-bottom: 10px}
|
||||
.panel-footer{ min-width:1000px; height: 210px!important;}
|
||||
/* 弹框 */
|
||||
.task-popup-text-center{ text-align: center; color: #333;}
|
||||
.task-popup-title{ border-bottom: 1px solid #eee; padding:10px 15px; }
|
||||
.task-popup-submit{ margin: 0 auto 15px; width: 120px;}
|
||||
/* TPM */
|
||||
.task-header{ width: 100%;min-width:1200px; background:url("/images/task/task-bg-header.png");height: 180px;background-size: cover;display: flex;align-items: center;}
|
||||
.task-header-info{ width: 1200px; margin: 0 auto; color:#fff}
|
||||
.task-header-info h2 a,.task-header-info h2{ font-weight: normal;color:#fff;}
|
||||
a.task-header-name{ max-width:200px;}
|
||||
.task-header-title{ display: block; max-width:750px;word-wrap: break-word;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;}
|
||||
.task-header-nav{ width: 100%;min-width:1200px; height:50px;}
|
||||
.task-header-navs{ width: 1200px; margin: 0 auto;}
|
||||
|
||||
.task-header-navs li{ float: left;}
|
||||
.task-header-navs li{ display: block; height: 50px; padding:0 50px; color:#666; text-align: center; font-size: 16px; line-height: 50px;}
|
||||
.task-header-navs li:hover,.task-header-navs li:hover a{ color:#FC7033!important;}
|
||||
.task-header-navs li.active{border-bottom: 2px solid #FC7033;color:#FC7033;}
|
||||
.task-header-navs li.active a{color:#FC7033!important;}
|
||||
.task-header-navs li.active .edu-cir-grey,.task-header-navs li:hover .edu-cir-grey,.edu-cir-grey.active{background: #FF7500;color: #FFFFff}
|
||||
|
||||
.task-pm-content{ width: 1200px; margin: 0 auto; min-height:566px}
|
||||
.task-pm-box{ width: 100%; background: #fff; border: 1px solid #e8e8e8;}
|
||||
.task-paner-con{ padding:15px; color:#666; line-height:2.0;}
|
||||
.task-paner-con img{ max-width: 100%}
|
||||
.panel-form{margin:0 30px 0px 20px; padding:30px 0; }.panel-form li{ margin-bottom:20px; font-size: 14px; color:#666;}
|
||||
|
||||
|
||||
.panel-form-label{ display:inline-block; width:10%; min-width:90px; text-align:right; line-height:40px; color: #666;}
|
||||
.panel-form-label1{ display:inline-block; width:20%; min-width:90px; text-align:right; line-height:40px; }
|
||||
.panel-form input,.panel-form textarea{ border:1px solid #e2e2e2;color:#666;line-height: 1.9;}
|
||||
.panel-box-sizing{-moz-box-sizing: border-box; /*Firefox3.5+*/-webkit-box-sizing: border-box; /*Safari3.2+*/-o-box-sizing: border-box; /*Opera9.6*/-ms-box-sizing: border-box; /*IE8*/box-sizing: border-box; }
|
||||
input.panel-form-width-690{ padding:5px;width:90%; height:40px; min-width:700px;}
|
||||
input.panel-form-width-200{ padding:5px; height:40px; width:200px;}
|
||||
input.panel-form-width-100{ padding:5px;width:100%; height:40px; min-width:700px;}
|
||||
textarea.panel-form-width-100{ padding:5px;width:100%; height:150px; min-width:700px;}
|
||||
textarea.panel-form-width-40{ padding:5px;width:100%; height: 40px; min-width:700px;}
|
||||
textarea.panel-form-width-690{ padding:5px;width:90%; height:150px; min-width:700px;}
|
||||
textarea.panel-form-width2-100{ padding:5px;width:100%; height:40px; min-width:700px;}
|
||||
textarea.panel-form-width2-690{ padding:5px;width:90%; height:40px; min-width:700px;}
|
||||
textarea.panel-form-width2-695{ padding:5px;width:95%; height:40px; min-width:700px;}
|
||||
.panel-form-width-670{ width: 670px; padding:5px;}
|
||||
.panel-form-height-150{ height: 150px;}
|
||||
.panel-form-height-30{height: 30px;}
|
||||
.task-bg-grey{ background:#f3f3f3!important; width:90%; min-width:700px; padding:10px; border:1px solid #f3f3f3;}
|
||||
.task-bg-grey-ligh{line-height: 1.9;padding:5px 10px;}
|
||||
.task-bg-grey li{ margin-bottom: 0}
|
||||
.task-bd-grey{width:680px; padding:10 0px;}
|
||||
.panel-form-width-690{ padding:5px;width:90%; min-height:40px; min-width:700px;}
|
||||
input.task-tag-input{ border:none; background: none; height:30px; padding:0 5px; color:#888; line-height: 30px;}
|
||||
textarea.task-textarea-pd{ padding-bottom: 0; padding-top:0;}
|
||||
.task-setting-tab{ min-height:600px;}
|
||||
.task-pd15-box{ padding:15px;}
|
||||
.mb20{margin-bottom: 20px;}
|
||||
input.knowledge_frame{height:28px;line-height:28px;border:none;background:#f3f5f7;}
|
||||
/* TPi全屏展示css */
|
||||
.content-all-fix{ position: absolute; top:75px; left:15px; right:15px; z-index:99; height: 91%; width: 98.5%;}
|
||||
.content-all-fix .big-tab-info-inner{ display: block; height:50%; overflow:auto; margin:15px 0 0px 15px; }
|
||||
.content-half-fix{ min-width:450px; margin:0; position: absolute; top:75px; left:15px; z-index:99;}
|
||||
.content-half-fix .content-history-inner{height:100%; overflow:auto; }
|
||||
.content-half-fix02{margin:0; position: absolute; top:65px; z-index:99; right:45px;}
|
||||
.content-history-extend{ height: 98%;overflow:auto;}
|
||||
.task-bg-grey .prettyprint{font-size: 9pt;font-family: Courier New,Arial;border: 1px solid #ddd;border-left: 5px solid #6CE26C;background: #f6f6f6;padding: 5px;}
|
||||
/* 左右版TPI 20170410byLB */
|
||||
#game_task_pass img{cursor: pointer}
|
||||
.-fit { position: absolute; top: 0; right: 0; bottom: 0; left: 0;}
|
||||
.-layout-v { display: flex; flex-direction: column;box-flex-direction: column;-webkit-flex-direction: column;}
|
||||
.page--header { position: fixed;top: 0; left:80px; right: 0; z-index: 7000;background:#33485F; height:44px; padding:10px 0; color:#fff;}
|
||||
.page--leftnav{position: fixed;top:0; left:0; right: 0; z-index: 9001;width:80px; height:100%;background:#282c37;}
|
||||
.page--body { position: relative;}
|
||||
.-margin-t-64 { margin-top: 64px;}
|
||||
.-flex { box-flex:1;flex:1;-webkit-flex:1;}
|
||||
/*.-flex-auto{flex-basis:100%;}*/
|
||||
.split-panel.-fit {position: absolute;}
|
||||
.split-panel { position: relative; overflow: hidden; min-height: 200px; height: 100%;}
|
||||
.-stretch { align-items: stretch;}
|
||||
.-layout { display: flex;}
|
||||
.split-panel--first { overflow: hidden;}
|
||||
.-relative { position: relative;}
|
||||
.-bg-white { background-color: #eee;}
|
||||
.split-panel.-handle .split-panel--second { padding-left: 2px;}
|
||||
/* .split-panel--second { overflow: hidden;} */
|
||||
.task-answer-view { position: absolute; top: 0; right: 0; bottom: 0;left: 0; display: flex;
|
||||
flex-direction: column; border-top: 1px solid #515151;}
|
||||
.-vertical { flex-direction: column;box-flex-direction: column;-webkit-flex-direction: column;}
|
||||
.-layout-h { display: flex;flex-direction: row;box-flex-direction: row;-webkit-flex-direction: row;}
|
||||
.-horizontal {flex-direction: row-reverse;box-flex-direction: row-reverse;-webkit-flex-direction: row-reverse;}
|
||||
.-scroll{ overflow:auto;}
|
||||
.-flex-basic0{flex-basis: 0%!important;box-flex-basis: 0%!important;-webkit-flex-basis: 0%!important; display: none}
|
||||
/*王昌------------拖拽增加样式---------------修改*/
|
||||
.-flex-basic40{width:40%;box-flex:auto;flex:auto;-webkit-flex:auto;}
|
||||
.-flex-basic50{width:60%;box-flex:auto;flex:auto;-webkit-flex:auto;}
|
||||
.b-label{width:4px;cursor:ew-resize;background:#2b2b2b;}
|
||||
.h-center{height:4px;cursor:ns-resize;background:#333;}
|
||||
.-changebg{height:3px;}
|
||||
.-brother{width:100%;height:100%;position:absolute;left:0;top:0;z-index:999;}
|
||||
.-bg-weightblack{background:#000;}
|
||||
.-flex-basic70{box-flex:4 9 auto;flex:4 9 auto;-webkit-flex:4 9 auto;height:70%;}
|
||||
/*---------------------------------------------*/
|
||||
.-flex-basic60{box-flex:2 1 auto;flex:2 1 auto;-webkit-flex:2 1 auto;height:30%;}
|
||||
.-flex-basic100{flex-basis: 100%!important;box-flex-basis: 100%!important;-webkit-flex-basis: 100%!important;}
|
||||
.-header-title{ max-width:500px; font-weight: normal;}
|
||||
.-header-right{ background:#333;border-radius:25px; padding:5px 15px; height: 30px; position: absolute; right:10px;line-height: 30px;}
|
||||
.-header-right-info{ padding:10px; background:#fff; border-radius:3px; top:50px; right:10px; position: relative;display:none;color:#666;}
|
||||
.-header-right-info font { border: 1px solid #dddddd; display: block;border-width: 8px; position: absolute; top: -15px;right:20px;border-style: solid; border-color: transparent transparent #fff transparent; font-size: 0; line-height: 0;}
|
||||
.-header-right-box:hover .-header-right-info{ display: block;}
|
||||
.-task-bar-bg{ width: 160px; height:15px; border-radius:15px; background:#ff9932; color:#fff; font-size: 12px; line-height: 15px; text-align: right; position: relative; padding-right:10px;}
|
||||
.-task-bar-inner{background:#ffc100; display: block; height: 15px;border-radius:15px; position: absolute; top:0; left:0;}
|
||||
.-task-widht-10{ width: 10%;}
|
||||
.-task-widht-20{ width: 20%;}
|
||||
.-task-widht-30{ width: 30%;}
|
||||
.-task-widht-40{ width: 40%;}
|
||||
.-task-widht-50{ width: 50%;}
|
||||
.-task-widht-60{ width: 60%;}
|
||||
.-task-widht-70{ width: 70%;}
|
||||
.-task-widht-80{ width: 80%;}
|
||||
.-task-widht-90{ width: 90%;}
|
||||
.-task-widht-100{ width: 100%;}
|
||||
.-footer-left{min-height:48px;background:#f5f5f5;}
|
||||
.-footer-left ul {width: 100%}
|
||||
.-footer-left ul li{ cursor: pointer; color:#666;}
|
||||
.-footer-left ul li:hover{ color:#888;}
|
||||
.-bg-black{ background:#2b2b2b; color:#f4f1ed;}
|
||||
.-bg-darkblack{background:#1D1D1D; color: #fff;}
|
||||
.task-answer-view{ border-top:1px solid #515151; background:#333;}
|
||||
#blacktab_nav {height:40px;background:#292929; }
|
||||
#blacktab_nav li {float:left; padding:0px 50px;text-align:center;height: 40px;line-height: 40px; }
|
||||
#blacktab_nav .add-webssh{position:relative;}
|
||||
#blacktab_nav .add-webssh span{position:absolute;top:0;right:5px;color:#fff;cursor:pointer;}
|
||||
#blacktab_nav li a{font-size:14px; }
|
||||
#blacktab_nav li.code-file-tab{padding: 0px;width: 120px;box-sizing: border-box;padding: 0px 15px;}
|
||||
.code-flie-list{display:none;position: absolute;z-index: 5;top:40px;background: #515151;width: 300px;left: 0px;color: #fff;}
|
||||
.blue-line{border-left: 3px solid #199ED8!important;padding-left: 5px;}
|
||||
.codefile-all{max-height: 122px;overflow-y: auto;overflow-x: hidden;}
|
||||
.codefile-all p{text-align: left;cursor: pointer;height: 22px;line-height: 22px;margin-bottom: 3px;padding-left: 5px;border-left: 3px solid #515151;width: 273px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
|
||||
.codefile-all p:hover{background: #CCCCCC;color: #333;}
|
||||
|
||||
.blacktab_hover { background: #333;}
|
||||
.blacktab_hover a{ color:#fff; }
|
||||
.-task-ces-top{ padding:5px 15px; background:#515151; color:#bfbfbf;}
|
||||
.-task-ces-info-left{ display: inline-block; width:100px; text-align: right; }
|
||||
.-position-a-r15{ position: absolute; top:5px; right:15px;}
|
||||
.-task-ml80{ margin-left: 80px;}
|
||||
.page--over { position: fixed;top: 0; left:80px; right: 0; z-index:8000; height:100%; color:#fff;}
|
||||
.-task-list-header{ border-bottom:1px solid #eee; padding:5px 15px; color:#898989; font-size: 14px; font-weight: normal;}
|
||||
.-task-list-header h3{ font-weight: normal; font-size:16px; color:#333;}
|
||||
.-task-list-inner{ background:#EFF2F7; margin:10px; padding:5px;}
|
||||
.-task-list-title{ font-size: 14px; color: #666;word-wrap: break-word; font-weight: normal; max-width: 80%;}
|
||||
.greytab-inner{ background:#fff; }
|
||||
.blacktab-inner{ background:#333;}
|
||||
.task-padding16{ padding:16px;}
|
||||
.task-padding10{ padding:10px;}
|
||||
.task-padding-new{ padding-top: 16px}
|
||||
/* TPM统计 20170321byLB */
|
||||
.panel-warp-3{ width: 30%; background:#23b181; color:#fff; margin:2.5%; margin-right:0; position: relative; }
|
||||
.panel-warp-3-over{ background:#fff;opacity:0.8; color:#29bd8b; width: 100%; height:135px; position: absolute; top:0; left:0; text-align: center; padding-top:130px;}
|
||||
.panel-warp-3-over a{color:#29bd8b; font-size: 18px; text-align:center; font-weight: bold;}
|
||||
.panel-warp-img{width: 30px; height: 30px; border-radius:100px;}
|
||||
.panel-warp-name{ display:block; max-width:100px;}
|
||||
.panel-warp-inner{ padding:15px;}
|
||||
.panel-warp-dbg{ background:#29bd8b; padding:15px; height:120px;}
|
||||
.panel-warp-dbg li{ margin-bottom:15px; }
|
||||
.panel-warp-dbg li:last-child{ margin-bottom:0;}
|
||||
.fa-icons-trophy{ position:relative; padding-top:10px;}
|
||||
.fa-icons-trophy span{ position:absolute; top:12px; right:10px; color:#f04b27; font-size:14px; font-weight: bold;}
|
||||
.fa-icons-flower{ display: inline-block; width: 14px; height: 14px; background:url("../images/task/icons-flower.png") 0 0 no-repeat;}
|
||||
.fa-icons-flower:hover{display:inline-block; width: 14px; height: 14px;background:url("../images/task/icons-flower.png") -18px 0 no-repeat;}
|
||||
/* 实训首页 20170330byLB */
|
||||
.task-index{ width: 1200px; margin:0 auto;}
|
||||
.task-index-head{ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15); }
|
||||
/*.task-index-head-top{background-image: linear-gradient(to right, rgb(106, 177, 216) 0%, rgb(1, 74, 78) 100%);background-color: rgb(1, 70, 74); padding:30px;}*/
|
||||
|
||||
/*background: linear-gradient(to right, rgb(104, 177, 215) 0%, rgb(1,75,79) 100%);*/
|
||||
/*background: linear-gradient(to right,#5DDAE4,#23ADC9);*/
|
||||
.task-index-head-top{ padding:30px;background:#FCA24B;background: linear-gradient(to right, rgb(104, 177, 215) 0%, rgb(1,75,79) 100%);}
|
||||
|
||||
/*.task-index-head-top{ padding:30px;background:#FFA65E;}*/
|
||||
.top-xz{position: absolute;border:14px solid #FFFFFF;border-radius: 50%;box-shadow: 0px 2px 10px rgba(142,142,142,0.6);
|
||||
opacity: 0.4;}
|
||||
|
||||
.task-index-head-top-course{padding:30px;background:linear-gradient(to right, rgb(69, 191, 165) 0%, rgb(164, 175, 247) 100%);}
|
||||
/*linear-gradient(to right, rgb(69, 191, 165) 0%, rgb(164, 175, 247) 100%);*/
|
||||
.task-inde-head-title{ color:#fff; }
|
||||
.task-index-head-info{ background:#fff; padding:10px 30px;}
|
||||
.task-index-head-info li{ width:100px; float: left; text-align: center; color:#666;}
|
||||
|
||||
.task-index-list{ width: 1200px;}
|
||||
|
||||
|
||||
.task-index-list-box{box-sizing:border-box; width:23.87%;margin: 0 1.5% 30px 0px; border-radius:2px;border:1px solid #eee; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15); color:#666; position:relative; }
|
||||
.task-index-list-box:hover{-webkit-animation: bounce-down 1s linear 1;animation: bounce-down 1s linear 1; }
|
||||
.task-index-list-box:hover .black-half{display: block;}
|
||||
.task-index-list-box:nth-child(4n+0) {margin: 0 0 30px 0;}
|
||||
.task-mg8{ margin:0 15px 15px 0px; border-radius:2px; border:1px solid #eee; box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.15); color:#666; position:relative; }
|
||||
.task-index-list-box-top{padding:16px; padding-top:30px; background:#fff; text-align: center; position:relative; height: 160px;}
|
||||
.task-index-list-title{ max-width:80%; display: block; margin:10px auto 0px; font-size:14px; font-weight: bold;}
|
||||
.task-index-list-user{padding:5px 10px; border-radius:25px;background: #F5F6F7; margin:0px auto 20px; display: inline-block;}
|
||||
.task-index-list-box-bottom{ background: #F5F6F7; color:#666; padding:10px 10%; text-align: center;}
|
||||
.task-index-list-box-bottom li{ display: inline; margin: 0 5px;}
|
||||
.task-index-list-box-bottom2{ background: #fff; color:#666; padding:10px 10%; text-align: center;}
|
||||
.task-index-list-box-bottom2 li{ display: inline; margin: 0 5px;}
|
||||
.task-vip{ position: absolute; right:15px; top:15px;}
|
||||
@-webkit-keyframes bounce-down {
|
||||
25% {-webkit-transform: translateY(-10px);}
|
||||
50%, 100% {-webkit-transform: translateY(0);}
|
||||
}
|
||||
|
||||
@keyframes bounce-down {
|
||||
25% {transform: translateY(-10px);}
|
||||
50%, 100% {transform: translateY(0);}
|
||||
}
|
||||
.task-index-list-hover{ position:absolute; top:0; left:0; color:#fff; width: 100%; height: 100%; border-radius:2px 2px 0 0; }
|
||||
.task-index-list-hover p{ margin:15px;overflow:hidden; text-align: left; height: 85%;}
|
||||
.task-index-list-hover{ display: none; }
|
||||
.task-mg8:hover .task-index-list-hover{display: block;}
|
||||
.task-mg8:hover{ box-shadow: 0 5px 15px 0 rgba(0, 0, 0, 0.15);cursor: pointer;}
|
||||
.task-dropdown{}
|
||||
.task-dropdown-menu{ min-width: 100px; border: 1px solid rgba(0,0,0,.05);box-shadow: 0 6px 12px rgba(0,0,0,.15);}
|
||||
.task-dropdown-menu li a{ color:#666; }
|
||||
/* 伸展型搜索 20170330byLB */
|
||||
.search-wrapper {position: absolute; font-size:14px; }
|
||||
.search-wrapper .input-holder { overflow: hidden; height: 30px; position: relative; width:32px;background: none;}
|
||||
.search-wrapper.active .input-holder { width:320px; border:none; border-bottom:2px solid #ccc; }
|
||||
.search-wrapper .input-holder .search-input { width:100%; height: 30px; font-size:14px; position: absolute; top:0px; left:0; border:none; opacity: 0; }
|
||||
.search-wrapper.active .input-holder .search-input { opacity: 1; outline:none; background: none;}
|
||||
.search-wrapper .search-icon { width:20px; height:20px; border:none; padding:0px; outline:none; position: relative; z-index: 2; float:right; cursor: pointer; background: none; color: #666; top:2px;}
|
||||
.search-wrapper .close { position: absolute; z-index: 1; top:2px; right:20px; width:25px; height:25px; cursor: pointer; opacity: 0;color: #666;}
|
||||
.search-wrapper.active .close {right:-35px; opacity: 1;}
|
||||
a.sortArrowActiveD {background:url(../images/post_image_list.png) -0px -20px no-repeat; width:7px; height:9px; float:left; margin-top: 10px;margin-left: 5px;}
|
||||
a.sortArrowActiveU {background:url(../images/post_image_list.png) -17px -20px no-repeat; width:7px; height:9px; float:left; margin-left:5px; margin-top:10px;}
|
||||
.postSort {width:75px; float:right}
|
||||
.shixunPostSort {width:60px; float:right}
|
||||
.remove_li li{ list-style-type: none!important;}
|
||||
|
||||
a.shixun-task-btn { display: inline-block;font-weight: bold;border: none;padding: 0 12px;color: #666;letter-spacing: 1px;text-align: center;font-size: 14px;height: 30px;line-height: 30px;border-radius: 3px; }
|
||||
a.shixun-task-ban-btn{background-color: #c2c4c6;display: inline-block;font-weight: bold;border: none;padding: 0 12px;color: #666;letter-spacing: 1px;text-align: center;font-size: 14px;height: 30px;line-height: 30px;border-radius: 3px; cursor: default;}
|
||||
.shixun-panel-list > div:nth-child(odd){ background:#f9f9f9; }
|
||||
.shixun-panel-list > div:nth-child(even){ background:#fff; }
|
||||
.shixun-panel-list {background: #fff; margin: 0 1px;}
|
||||
.shixun-panel-inner { background: #EFF2F7; padding: 15px; height: 70px;}
|
||||
.challange_operate{display: none}
|
||||
.shixun-panel-inner:hover .challange_operate{display: block}
|
||||
.shixun_title {color: #333;font-size: 16px;}
|
||||
.g_frame{border: 1px solid #29bd8b;color: #29bd8b;padding:0 5px;border-radius: 3px;text-align:center;}
|
||||
.loading-center{text-align: center; align-items: center;justify-content: center;}
|
||||
.center{vertical-align: middle;text-align: center; }
|
||||
.itoblock_w150{ display: block; float:left; width:150px }
|
||||
.itoblock_w75{ display: block; float:left; width:75px }
|
||||
|
||||
/*实训--技能勋章*/
|
||||
.modal-list li{float: left;padding: 0px 15px;background:#ff7500;color: #ffffff;border-radius: 4px;margin-right: 10px}
|
||||
.modal-list li:before{content: '●';color: #FFFFFF;margin-right: 5px;font-size: 14px}
|
||||
.modal-list span{width: 8px;height: 8px;border-radius: 50%;background: #ffffff;display: block;float: left;margin-right: 5px;margin-top:10px;}
|
||||
|
||||
/* 合作者 20170516byLB */
|
||||
.task-partner-list{ padding:15px; border-bottom:1px solid #eee;}
|
||||
.task-width33{ width:33.3%;}
|
||||
|
||||
.read_only{ -moz-user-select: none; -webkit-user-select: none; }
|
||||
|
||||
.task-form-28{width: 28%;padding:0px 10px}
|
||||
|
||||
|
||||
/* 实训首页的搜索 */
|
||||
.xy_box{padding:16px;height:180px}
|
||||
.task_yx_bo{margin: 0px auto 13px;}
|
||||
.course-nav-box{padding:0px 10px;margin:30px 0px}
|
||||
.xy_level{width: 80%;margin: 0px auto;border-top: 1px solid #eee;margin-top: 5px;line-height: 35px;}
|
||||
.course-nav-row{padding:7px 0px}
|
||||
.course-nav-row_item li{width:auto;height: 30px;line-height: 30px;margin: 5px;padding:0px 15px;}
|
||||
.course-nav-row_item label{cursor: pointer;}
|
||||
.check_item{height:40px;line-height: 40px;padding: 0px 15px;}
|
||||
.more_check{position: absolute;bottom: 5px;right: 10px;cursor: pointer;}
|
||||
|
||||
|
||||
.bottomdashed1{border-bottom: 1px dashed #eeeeee;}
|
||||
|
||||
/*更多和收起*/
|
||||
.two_line_lesson{height: 80px;overflow: hidden;}
|
||||
.more_line_lesson{max-height: 200px;display: block;}
|
||||
.scroll_lesson{overflow-x: hidden;overflow-y: scroll;}
|
||||
|
||||
.searchFor{width:auto;}
|
||||
.searchFor .searchCon{width:250px;border-bottom:1px solid #cccccc;float: left;height: 30px;}
|
||||
.searchFor .searchCon input{border: none;outline: none;height: 29px;width:91%;}
|
||||
.searchFor .searchImg{margin:5px 10px 0px 0px;cursor: pointer;}
|
||||
.searchFor .search_close{font-size: 18px;float: right;color: #666;height: 29px;line-height: 29px;cursor: pointer;}
|
||||
|
||||
.tab_color{color: #bfbfbf!important;}
|
||||
|
||||
/*_game_show.html.erb页面新增的一个tab*/
|
||||
.comments_item_content img{border-radius: 50%;margin-right: 5px}
|
||||
.comment_item_one{flex: 1;}
|
||||
.comment_item_bottom{border-bottom: 1px solid #efefef;display: flex}
|
||||
.comment_item_top{border-top: 1px solid #efefef}
|
||||
.comment_item_left_green{border-left: 3px solid #29bd8b}
|
||||
.return_item{height: 20px;line-height: 20px;margin-top: 5px;}
|
||||
.comment-input{width: 100%;margin: 10px;margin-right: 17px;}
|
||||
.comment-input textarea{border: none !important;width:100%; outline: none;height: 30px;border-radius: 4px;padding-left: 5px;float:left}
|
||||
.comment_position{ position: absolute;bottom: 8px;right: 20px}
|
||||
|
||||
/*-------新建阶段添加选项部分----------*/
|
||||
.option-item{border:1px solid #e2e2e2;}
|
||||
.option-item,.add-option-item{display: block;width: 38px;height: 38px;text-align: center;line-height: 38px;border-radius: 4px}
|
||||
.check-option-bg{background: #FF7500;color: #ffffff!important;border: 1px solid #FF7500}
|
||||
.add-option-input{padding: 5px;width: 90%;height: 40px;min-width: 700px;}
|
||||
.add-option-input a{display: block;width: 100%;height: 100%;cursor: pointer}
|
||||
.position-delete{position: absolute;right: -22px;top: 12px;cursor: pointer}
|
||||
|
||||
/*--------TPI的答案选项卡------*/
|
||||
.quiz-task-options:not(.-compact) {padding:10px;}
|
||||
.card {position: relative;border-radius: 2px;overflow: hidden;}
|
||||
/*.card:hover{background: #3f3f3f;}*/
|
||||
.card-check{background: #3498db!important;}
|
||||
.-justify {justify-content: space-between;}
|
||||
.-center { align-items: center;min-height: 66px;}
|
||||
.markdown {letter-spacing: 0;line-height: 1.6;word-wrap: break-word;word-break: break-word;}
|
||||
.markdown code {padding:0;line-height: 23px;margin: 0;font-family: "微软雅黑","宋体";}
|
||||
|
||||
|
||||
/*模拟实战---加载等待*/
|
||||
.loading_all{background:#ffffff;z-index: 100000;width: 100%;height: 100%;position: fixed;left: 0px;top:0px;text-align: center;}
|
||||
.loading_main img{border-radius: 4px;}
|
||||
.loading_main span{font-size: 44px;font-weight: bold;color: #ff7500;letter-spacing: 5px;margin-left: 5px;}
|
||||
.load{width: auto;top:50%;margin-top:-100px;position: relative;}
|
||||
.loading_seconde{color: #ff7500;letter-spacing: 3px;font-size: 16px;}
|
||||
#ajax-indicator-base {
|
||||
position: absolute; /* fixed not supported by IE*//*
|
||||
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
margin-left: -20px;
|
||||
margin-top: -40px;
|
||||
width: 20%;
|
||||
height: 5%; */
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
font-weight:bold;
|
||||
text-align:center;
|
||||
/*padding:0.6em;*/
|
||||
z-index:9999;
|
||||
background: rgba(225,225,225,0);
|
||||
}
|
||||
html>body #ajax-indicator-base { position: fixed; }
|
||||
|
||||
#ajax-indicator-base embed{
|
||||
position: relative;
|
||||
top: 40%;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-left: -40px;
|
||||
left: 50%;
|
||||
}
|
||||
/*#ajax-indicator-base span{
|
||||
color:#fff;
|
||||
background-position: 0% 40%;
|
||||
background-repeat: no-repeat;
|
||||
*//*background-image: url(/images/loading.gif);*//*
|
||||
padding-left: 26px;
|
||||
vertical-align: bottom;
|
||||
z-index:999;
|
||||
}*/
|
||||
|
||||
.save-tip{display:none;position: fixed;top:0px;left: 0px;width: 100%;height: 100%;}
|
||||
.save-tip-content{position: absolute;top:50%;left: 50%;margin-left: -36px;margin-top:-19px;background: rgba(0,0,0,0.7);color:#fff;padding:5px 15px;border-radius: 4px}
|
||||
.empty{background: #494A4C;display: inline; margin: 0 2px; padding: 0 3px;}
|
||||
.tab-key{background: #494A4C;display: inline; margin: 0 2px; padding: 0 6px;}
|
||||
|
||||
/*二次回复的提示语的样式*/
|
||||
.points-data-tip-top{position:absolute;left:100px;top:-30px;opacity:.7;width:150px;height:30px;z-index:9999;display:none;}
|
||||
.data-tip-top1{position:relative;box-shadow:0px 0px 8px #000;background:#000;color:#fff;word-wrap: break-word;
|
||||
text-align:center;border-radius:4px;padding:0 10px;border:1px solid #000;}
|
||||
.data-tip-top1:after,.data-tip-top1:before{position: absolute;content:'';width:0;height:0;left: 45%;bottom:-10px;border-left: 5px solid transparent;
|
||||
border-right: 5px solid transparent;border-top: 10px solid #000;}
|
||||
.data-tip-top1:before{bottom:-11px;}
|
||||
/*选择题tab切换*/
|
||||
.nav_option li{overflow: hidden;width: 110px; text-align: center;cursor: pointer;height: 38px;line-height: 38px;border-top-right-radius: 5px;border-top-left-radius: 5px;border:1px solid #e2e2e2;border-bottom: 0px;color: #FF7500;border-right: none;}
|
||||
.nav_option li:last-child{border-right: 1px solid #e2e2e2;}
|
||||
.nav_option li a{width: 100%;height: 100%;display: block;}
|
||||
|
||||
/*---------------------试卷----------------------*/
|
||||
.question_item_con{font-weight: normal!important;border:1px solid #EEEEEE!important;color: #333!important;background: #FFFFff!important;position: relative}
|
||||
.exam_operator{cursor: pointer;position: absolute;right: 15px;top: 11px;}
|
||||
.question_item_con .write_answer{border-top:1px solid #EEEEEE;background:#EFF9FD;padding: 10px 15px;text-align:justify;}
|
||||
.add_item_part{width: auto;padding: 2px 20px;border: 1px solid #ff7500;border-radius: 3px;margin-left: 15px;cursor: pointer;color: #ff7500!important;}
|
||||
.add_item_part:hover{color:#fff!important;background-color: #ff7500}
|
||||
|
||||
/*作业问答*/
|
||||
.work_search_ul{border: 1px solid #EEEEEE;border-radius: 4px;}
|
||||
.work_search_ul li span{display:block;float: left;height: 38px;line-height: 38px}
|
||||
.work_search_ul li{border-bottom: 1px dashed #EEEEEE;}
|
||||
.work_search_ul li:last-child{border-bottom: none}
|
||||
.work_search_ul .magic-radio + label,.work_search_ul .magic-checkbox + label{top:5px}
|
||||
|
||||
/*更新提示*/
|
||||
.update_back_main{display: none;position: fixed;left: 0px;top:0px;background: rgba(0,0,0,0.3);width: 100%;z-index: 7001;height: 100%;}
|
||||
.tip-panel-animate-left{position: absolute;z-index: 9000;left: 80px;top:290px;background: #FFFFff;width: 430px;height: 140px;border-radius: 3px;}
|
||||
.tip-panel-animate{position: absolute;z-index: 10001;right: 4px;top:40px;background: #FFFFff;width: 430px;height: 140px;border-radius: 3px;display: none}
|
||||
.tip-panel-animate .tip-img,.tip-panel-animate-left .tip-img{width: 130px;text-align: center;background-color: #E8E9ED;height: 100%;}
|
||||
.tip-panel-animate .tip-img img,.tip-panel-animate-left .tip-img img{width: 70px;height: 70px;margin: 35px 30px;}
|
||||
.tip-right-con{width: 69.7%;height: 100%;}
|
||||
.tip-operator-btn{width:100%;border-top: 1px solid #eee;height: 40px;position: absolute;right: 0px;bottom: 0px;text-align: center;}
|
||||
.tip-operator-btn a,.tip-operator-btn span{height: 100%;text-align: center;line-height: 40px;width: 50%}
|
||||
.tip-operator-btn a:hover,.tip-operator-btn span:hover{background-color:#f9f9f9}
|
||||
.tip-operator-btn a:first-child,.tip-operator-btn span:first-child{border-right: 1px solid #eee;width: 49.5%}
|
||||
.animate-tip{animation:rightToleft 1s;}
|
||||
.animate-tip-hide{animation:leftToright 1s;}
|
||||
@keyframes rightToleft
|
||||
{
|
||||
from {right: -400px;}
|
||||
to {right: 4px;}
|
||||
}
|
||||
@keyframes leftToright
|
||||
{
|
||||
from {right: 4px;}
|
||||
to {right: -420px;}
|
||||
}
|
||||
.animate-tip-l{animation:rightToleft-l 1s;}
|
||||
.animate-tip-hide-l{animation:leftToright-l 1s;}
|
||||
@keyframes rightToleft-l
|
||||
{
|
||||
from {left: -400px;}
|
||||
to {left: 80px;}
|
||||
}
|
||||
@keyframes leftToright-l
|
||||
{
|
||||
from {left: 80px;}
|
||||
to {left: -420px;}
|
||||
}
|
||||
|
||||
|
||||
/*----------实训TPI图片查看效果--------------*/
|
||||
.photo_display{box-sizing: border-box;width: 100%;position: fixed;top: 0px;left: 0px;padding-top: 64px;padding-left: 80px;background: rgba(0,0,0,0);height: 100%;z-index: 100}
|
||||
.photo_display .task-popup{width: 100%!important;height: 100%!important;}
|
||||
#picture-content img{max-width: 100%;height: 400px;display: block; margin:0px auto;margin-bottom: 20px;}
|
||||
#box-img{width:100%;height:100%;display:table;text-align:center;background:#fff;}
|
||||
#box-img span{display:table-cell;vertical-align:middle;}
|
||||
|
||||
/*-------------学员统计 通关排行榜------------*/
|
||||
.rankings_num{position: absolute;width: 100%;top: 3px;height: 15px;line-height: 15px;left: 0px;font-size: 12px;color: #F24B27;text-align: center}
|
||||
|
||||
.census_main{width: 1086px;overflow: hidden;position: relative;min-height: 350px;margin:0px 45px;}
|
||||
.census_main ul{position: absolute;min-width: 1086px;}
|
||||
.census_main ul>li{float:left;width: 260px;margin:6px 6px;min-height: 335px}
|
||||
.census_main ul>li:nth-child(4n){margin-right: 0px;}
|
||||
.part_main{border-radius: 5px;background: #FFFFff;border:1px solid #EEEEEE}
|
||||
.part_main .part_top{background: #FF9E6A;color: #FFFFff;padding: 10px 15px;border-radius: 5px 5px 0px 0px;}
|
||||
.wipe{display: none;cursor: pointer;line-height: 332px;color:#FFFFff!important;font-size:16px ;width: 100%;position: absolute;left: 0px;top:0px;background:rgba(0,0,0,0.3);height: 100%;z-index: 3;text-align: center;border-radius: 5px; }
|
||||
.part_main:hover .wipe{display: block;}
|
||||
|
||||
|
||||
#census_left,#census_right{display: none;position: absolute;cursor: pointer;background: #FCF2EC;padding: 10px 5px;width: 35px;box-sizing: border-box;top:122.5px;text-align: center}
|
||||
#census_left i,#census_right i{color:#FBBD81;}
|
||||
|
||||
|
||||
/*-----------实训配置、评测脚本-------------*/
|
||||
.edit_script_text .test_script_text{word-break: break-all;background-color: #f7f7f7;}
|
||||
.edit_script_text .CodeMirror-lines{padding: 0px!important;padding-bottom: 4px}
|
30
index.html
|
@ -1,30 +0,0 @@
|
|||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><meta name="”Keywords”" content="”EduCoder,信息技术实践教学,精品课程网,慕课MOOC″"><meta name="”Keywords”" content="”实践课程,项目实战,java实训,python实战,人工智能技术,后端开发学习,移动开发入门″"><meta name="”Keywords”" content="”翻转课堂,高效课堂创建,教学模式″"><meta name="”Keywords”" content="”实训项目,python教程,C语言入门,java书,php后端开发,app前端开发,数据库技术″"><meta name="”Keywords”" content="”在线竞赛,计算机应用大赛,编程大赛,大学生计算机设计大赛,全国高校绿色计算机大赛″"><meta name="”Description”" content="”EduCoder是信息技术类实践教学平台。EduCoder涵盖了计算机、大数据、云计算、人工智能、软件工程、物联网等专业课程。超10000个实训案例及22000个技能评测点,建立学、练、评、测一体化实验环境。”"><meta name="”Description”" content="”EduCoder实践课程,旨在于通过企业级实战实训案例,帮助众多程序员提升各项业务能力。解决学生、学员、企业员工等程序设计能力、算法设计能力、问题求解能力、应用开发能力、系统运维能力等。”"><meta name="”Description”" content="”EduCoder翻转课堂教学模式,颠覆了传统教学模式,让教师与学生的关系由“权威”变成了“伙伴”。将学习的主动权转交给学生,使学生可个性化化学,学生的学习主体得到了彰显。”"><meta name="”Description”" content="”EduCoder实训项目为单个知识点关卡实践训练,帮助学生巩固单一弱点,强化学习。" ”><meta name="”Description”" content="”EduCoder实践教学平台,各类大赛为进一步提高各类学生综合运用高级语言程序设计能力,培养创新意识和实践探索精神,发掘优秀软件人才。" ”><meta name="viewport" id="viewport" content="width=device-width,initial-scale=0.3,maximum-scale=0.3"><meta name="theme-color" content="#000000"><link rel="manifest" href="/react/build/./manifest.json"><script type="text/javascript">window.__isR = true;
|
||||
// 不支持ie9 ie10
|
||||
if (
|
||||
( navigator.userAgent.indexOf('MSIE 9') != -1
|
||||
|| navigator.userAgent.indexOf('MSIE 10') != -1 )
|
||||
&&
|
||||
location.pathname.indexOf("/compatibility") == -1) {
|
||||
debugger;
|
||||
// location.href = './compatibility'
|
||||
location.href = '/compatibility.html'
|
||||
}
|
||||
// const isMobile = (/android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini/i.test(navigator.userAgent.toLowerCase()));
|
||||
const isWeiXin = (/MicroMessenger/i.test(navigator.userAgent.toLowerCase()));
|
||||
if (isWeiXin) {
|
||||
document.write('<script type="text/javascript" src="/javascripts/wx/jweixin-1.3.0.js"><\/script>');
|
||||
}</script><link rel="stylesheet" href="/react/build/css/css_min_all.css?v=1.1.1"><link rel="stylesheet" href="/react/build/css/iconfont.css?v=1.1.1"><link rel="stylesheet" href="https://cdn.bootcss.com/quill/1.3.7/quill.core.min.css"><style></style><link href="/react/build/./static/css/main.fd229636.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="md_div" style="display:none"></div><div id="root" class="page -layout-v -fit widthunit"></div><div id="picture_display" style="display:none"></div>
|
||||
<script>
|
||||
(function() {
|
||||
var _host = '/react/build/'
|
||||
/**/
|
||||
if (window.location.host == 'pre-newweb.educoder.net') {
|
||||
_host = 'https://testali-cdn.educoder.net/react/build/'
|
||||
} else if (window.location.host == 'www.educoder.net') {
|
||||
_host = 'https://ali-cdn.educoder.net/react/build/'
|
||||
}
|
||||
document.write('<script type="text/javascript" src="' + _host + 'js/js_min_all.js"><\/script>');
|
||||
document.write('<script type="text/javascript" src="' + _host + 'static/js/main.dda56577.js"><\/script>');
|
||||
})()
|
||||
</script>
|
||||
<script>!function(){var t=location.href;"3007"===window.location.port?-1!=t.indexOf("/tasks/")?(document.write('<script type="text/javascript" src="https://newweb.educoder.net/assets/kindeditor/kindeditor.js"><\/script>'),document.write('<script type="text/javascript" src="/react/build/js/create_kindeditor.js?v=1.1.1"><\/script>'),document.write('<script type="text/javascript" src="https://newweb.educoder.net/javascripts/educoder/edu_application.js"><\/script>')):-1!=t.indexOf("/paths/")&&document.write('<script type="text/javascript" src="https://newweb.educoder.net/javascripts/educoder/edu_application.js"><\/script>'):-1!=t.indexOf("/tasks/")?(document.write('<script type="text/javascript" src="/assets/kindeditor/kindeditor.js"><\/script>'),document.write('<script type="text/javascript" src="/react/build/js/create_kindeditor.js?v=1.1.1"><\/script>'),document.write('<script type="text/javascript" src="/javascripts/educoder/edu_application.js"><\/script>')):-1!=t.indexOf("/paths/")&&document.write('<script type="text/javascript" src="/javascripts/educoder/edu_application.js"><\/script>')}()</script><script type="text/javascript" src="https://cdn.bootcss.com/quill/1.3.7/quill.core.min.js"></script></body></html>
|
|
@ -1,111 +0,0 @@
|
|||
|
||||
.CodeMirror-merge {
|
||||
position: relative;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
.CodeMirror-merge, .CodeMirror-merge .CodeMirror {
|
||||
min-height:50px;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-2pane .CodeMirror-merge-pane { width: 48%; }
|
||||
.CodeMirror-merge-2pane .CodeMirror-merge-gap { width: 4%; }
|
||||
.CodeMirror-merge-3pane .CodeMirror-merge-pane { width: 31%; }
|
||||
.CodeMirror-merge-3pane .CodeMirror-merge-gap { width: 3.5%; }
|
||||
|
||||
.CodeMirror-merge-pane {
|
||||
display: inline-block;
|
||||
white-space: normal;
|
||||
vertical-align: top;
|
||||
}
|
||||
.CodeMirror-merge-pane-rightmost {
|
||||
position: absolute;
|
||||
right: 0px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-gap {
|
||||
z-index: 2;
|
||||
display: inline-block;
|
||||
height: 100%;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
background: #515151;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-scrolllock-wrap {
|
||||
position: absolute;
|
||||
bottom: 0; left: 50%;
|
||||
}
|
||||
.CodeMirror-merge-scrolllock {
|
||||
position: relative;
|
||||
left: -50%;
|
||||
cursor: pointer;
|
||||
color: #d8d8d8;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copybuttons-left, .CodeMirror-merge-copybuttons-right {
|
||||
position: absolute;
|
||||
left: 0; top: 0;
|
||||
right: 0; bottom: 0;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copy {
|
||||
position: absolute;
|
||||
cursor: pointer;
|
||||
color: #ce374b;
|
||||
z-index: 3;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copy-reverse {
|
||||
position: absolute;
|
||||
cursor: pointer;
|
||||
color: #44c;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copybuttons-left .CodeMirror-merge-copy { left: 2px; }
|
||||
.CodeMirror-merge-copybuttons-right .CodeMirror-merge-copy { right: 2px; }
|
||||
|
||||
.CodeMirror-merge-r-inserted, .CodeMirror-merge-l-inserted {
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAYAAACddGYaAAAAGUlEQVQI12MwuCXy3+CWyH8GBgYGJgYkAABZbAQ9ELXurwAAAABJRU5ErkJggg==);
|
||||
background-position: bottom left;
|
||||
background-repeat: repeat-x;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-r-deleted, .CodeMirror-merge-l-deleted {
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAYAAACddGYaAAAAGUlEQVQI12M4Kyb2/6yY2H8GBgYGJgYkAABURgPz6Ks7wQAAAABJRU5ErkJggg==);
|
||||
background-position: bottom left;
|
||||
background-repeat: repeat-x;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-r-chunk { background: #9a6868; }
|
||||
.CodeMirror-merge-r-chunk-start { /*border-top: 1px solid #ee8; */}
|
||||
.CodeMirror-merge-r-chunk-end {/* border-bottom: 1px solid #ee8; */}
|
||||
.CodeMirror-merge-r-connect { fill:#9a6868;}
|
||||
|
||||
.CodeMirror-merge-l-chunk { background: #eef; }
|
||||
.CodeMirror-merge-l-chunk-start { border-top: 1px solid #88e; }
|
||||
.CodeMirror-merge-l-chunk-end { border-bottom: 1px solid #88e; }
|
||||
.CodeMirror-merge-l-connect { fill: #eef; stroke: #88e; stroke-width: 1px; }
|
||||
|
||||
.CodeMirror-merge-l-chunk.CodeMirror-merge-r-chunk { background: #dfd; }
|
||||
.CodeMirror-merge-l-chunk-start.CodeMirror-merge-r-chunk-start { border-top: 1px solid #4e4; }
|
||||
.CodeMirror-merge-l-chunk-end.CodeMirror-merge-r-chunk-end { border-bottom: 1px solid #4e4; }
|
||||
|
||||
.CodeMirror-merge-collapsed-widget:before {
|
||||
content: "(...)";
|
||||
}
|
||||
.CodeMirror-merge-collapsed-widget {
|
||||
cursor: pointer;
|
||||
color: #88b;
|
||||
background: #eef;
|
||||
border: 1px solid #ddf;
|
||||
font-size: 90%;
|
||||
padding: 0 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.CodeMirror-merge-collapsed-line .CodeMirror-gutter-elt { display: none; }
|
|
@ -1,429 +0,0 @@
|
|||
//需求:表情栏可以隐藏显示,高度只要一点高
|
||||
function sd_create_editor(params){
|
||||
// var minHeight; //最小高度
|
||||
var paramsHeight = params.height; //设定的高度
|
||||
var id = arguments[1] ? arguments[1] : undefined;
|
||||
var type = arguments[2] ? arguments[2] : '';
|
||||
var paramsWidth = params.width == undefined ? "100%" : params.width;
|
||||
|
||||
var editor = params.kindutil.create(params.textarea, {
|
||||
resizeType : 1,minWidth:"1px",width:"94%",
|
||||
height:"33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
minHeight:"33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
width:params.width,
|
||||
/*
|
||||
items:['emoticons','fontname',
|
||||
'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist','insertunorderedlist', '|',
|
||||
'formatblock', 'fontsize', '|','indent', 'outdent',
|
||||
'|','imagedirectupload','more'],*/
|
||||
items : ['code','emoticons','fontname',
|
||||
'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist','insertunorderedlist', '|',
|
||||
'formatblock', 'fontsize', '|','indent', 'outdent',
|
||||
'|','imagedirectupload','table', 'media', 'preview',"more"
|
||||
],
|
||||
afterChange:function(){//按键事件
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe.height(paramsHeight);
|
||||
this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : (params.kindutil.GECKO ? body.offsetHeight+26:body.offsetHeight+7)) , paramsHeight));
|
||||
},
|
||||
afterBlur:function(){
|
||||
//params.toolbar_container.hide();
|
||||
params.textarea.blur();
|
||||
sd_check_editor_form_field({content:this,contentmsg:params.contentmsg,textarea:params.textarea});
|
||||
if(this.isEmpty()) {
|
||||
this.edit.html("<span id='hint' style='color:#999999;font-size:12px;'>我要回复</span>");
|
||||
}
|
||||
//params.toolbar_container.hide();
|
||||
$('#reply_image_' + id).addClass('imageFuzzy');
|
||||
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(this.edit.html())){
|
||||
params.submit_btn.hide();
|
||||
params.toolbar_container.hide();
|
||||
this.resize("100%", null);
|
||||
}else if(this.edit.html().trim() != ""){
|
||||
params.submit_btn.show();
|
||||
params.toolbar_container.show();
|
||||
}
|
||||
|
||||
//params.submit_btn.css("display","none");
|
||||
|
||||
},
|
||||
afterFocus: function(){
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(edit.html())){
|
||||
edit.html('');
|
||||
}
|
||||
params.submit_btn.show();
|
||||
params.contentmsg.hide();
|
||||
params.toolbar_container.show();
|
||||
// params.toolbar_container.show();
|
||||
$('#reply_image_' + id).removeClass('imageFuzzy');
|
||||
//edit.iframe.width(paramsWidth);
|
||||
|
||||
this.resize("100%", null);
|
||||
this.resize(paramsWidth, null);
|
||||
//params.submit_btn.show();
|
||||
|
||||
},
|
||||
|
||||
afterCreate:function(){
|
||||
//params.submit_btn.hide();
|
||||
var toolbar = $("div[class='ke-toolbar']",params.div_form);
|
||||
toolbar.css('display','inline');
|
||||
toolbar.css('padding',0);
|
||||
$(".ke-outline>.ke-toolbar-icon",toolbar).append('表情');
|
||||
params.toolbar_container.append(toolbar);
|
||||
params.toolbar_container.hide();
|
||||
params.submit_btn.hide();
|
||||
//init
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe[0].scroll = 'no';
|
||||
body.style.overflowY = 'hidden';
|
||||
//reset height
|
||||
paramsHeight = paramsHeight == undefined ? params.kindutil.removeUnit(this.height) : paramsHeight;
|
||||
edit.iframe.height(paramsHeight);
|
||||
edit.html("<span id='hint' style='color:#999999;font-size:12px;'>我要回复</span>");
|
||||
this.resize(null,paramsHeight);// Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight)+ paramsHeight , paramsHeight)
|
||||
// params.toolbar_container.hide();
|
||||
if(typeof enableAt === 'function'){
|
||||
enableAt(this, id, type);
|
||||
}
|
||||
}
|
||||
}).loadPlugin('paste');
|
||||
return editor;
|
||||
}
|
||||
|
||||
function sd_create_shixun_editor(params){
|
||||
// var minHeight; //最小高度
|
||||
var paramsHeight = params.height; //设定的高度
|
||||
var id = arguments[1] ? arguments[1] : undefined;
|
||||
var type = arguments[2] ? arguments[2] : '';
|
||||
var paramsWidth = params.width == undefined ? "100%" : params.width;
|
||||
|
||||
var editor = params.kindutil.create(params.textarea, {
|
||||
resizeType : 1,minWidth:"1px",width:"94%",
|
||||
height:"33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
minHeight:"33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
width:params.width,
|
||||
/*
|
||||
items:['emoticons','fontname',
|
||||
'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist','insertunorderedlist', '|',
|
||||
'formatblock', 'fontsize', '|','indent', 'outdent',
|
||||
'|','imagedirectupload','more'],*/
|
||||
items : ['imagedirectupload'],
|
||||
afterChange:function(){//按键事件
|
||||
if(this.isEmpty() || this.edit.doc.body.innerText == '说点什么') {
|
||||
$('#mini_comment_section').height('auto')
|
||||
} else {
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
var newHeight = 0;
|
||||
|
||||
var FF = !(window.mozInnerScreenX == null);
|
||||
if (FF) { // 火狐下处理方式不一样
|
||||
newHeight = $(body).height()
|
||||
} else {
|
||||
$(body).children().each(function(){newHeight+=$(this).height()});
|
||||
}
|
||||
// var newHeight = $(body).height()
|
||||
|
||||
var maxHeight = 357 // $(window).height() - 150 - 57; // 150 上部距离 57 下部距离
|
||||
|
||||
newHeight = newHeight <= maxHeight ? newHeight : maxHeight
|
||||
|
||||
|
||||
if (newHeight > 150) {
|
||||
if (FF) { // 火狐下处理方式不一样
|
||||
this.resize("100%", (newHeight + 20) + 'px');
|
||||
} else {
|
||||
this.resize("100%", newHeight + 'px');
|
||||
}
|
||||
$('#mini_comment_section').height(newHeight+57)
|
||||
} else {
|
||||
this.resize("100%", '150px');
|
||||
$('#mini_comment_section').height('auto')
|
||||
}
|
||||
}
|
||||
|
||||
//edit.iframe.height(paramsHeight);
|
||||
//this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : (params.kindutil.GECKO ? body.offsetHeight+26:body.offsetHeight+7)) , 15));
|
||||
},
|
||||
afterBlur:function(){
|
||||
//params.toolbar_container.hide();
|
||||
params.textarea.blur();
|
||||
sd_check_editor_form_field({content:this,contentmsg:params.contentmsg,textarea:params.textarea});
|
||||
if(this.isEmpty()) {
|
||||
$('#mini_comment_section').height('auto')
|
||||
this.edit.html("<span id='hint' style='color:#999999;font-size:14px;'>说点什么</span>");
|
||||
params.submit_btn.hide();
|
||||
params.toolbar_container.hide();
|
||||
this.resize("100%", "30px");
|
||||
$("#dis_reply_id").val("");
|
||||
if($("#editor_panel").length>0){
|
||||
$("#editor_panel").attr("style","margin-top:9px;flex: 1;");
|
||||
$("#editor_panel").parents("form").addClass("df")
|
||||
}
|
||||
}
|
||||
//params.toolbar_container.hide();
|
||||
/*$('#reply_image_' + id).addClass('imageFuzzy');
|
||||
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(this.edit.html())){
|
||||
params.submit_btn.hide();
|
||||
params.toolbar_container.hide();
|
||||
this.resize("100%", "30px");
|
||||
}else if(this.edit.html().trim() != ""){
|
||||
params.submit_btn.show();
|
||||
params.toolbar_container.show();
|
||||
}*/
|
||||
//params.submit_btn.css("display","none");
|
||||
|
||||
// $('#mini_comment_section').height('auto')
|
||||
},
|
||||
afterFocus: function(){
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(edit.html())){
|
||||
edit.html("");
|
||||
}
|
||||
params.submit_btn.show();
|
||||
params.contentmsg.hide();
|
||||
params.toolbar_container.show();
|
||||
// params.toolbar_container.show();
|
||||
$('#reply_image_' + id).removeClass('imageFuzzy');
|
||||
//edit.iframe.width(paramsWidth);
|
||||
|
||||
var newHeight = $(body).height()
|
||||
if (newHeight < 150) {
|
||||
this.resize("100%", "150px");
|
||||
this.resize(paramsWidth, "150px");
|
||||
}
|
||||
if($("#editor_panel").length>0){
|
||||
$("#editor_panel").attr("style","width:100%;margin-top:9px;");
|
||||
$("#editor_panel").parents("form").removeClass("df")
|
||||
}
|
||||
//params.submit_btn.show();
|
||||
|
||||
// $('#mini_comment_section').height('244px')
|
||||
},
|
||||
|
||||
afterCreate:function(){
|
||||
//params.submit_btn.hide();
|
||||
var toolbar = $("div[class='ke-toolbar']",params.div_form);
|
||||
toolbar.css('display','inline');
|
||||
toolbar.css('padding',0);
|
||||
$(".ke-outline>.ke-toolbar-icon",toolbar).append('表情');
|
||||
params.toolbar_container.append(toolbar);
|
||||
params.toolbar_container.hide();
|
||||
params.submit_btn.hide();
|
||||
//init
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe[0].scroll = 'no';
|
||||
// body.style.overflowY = 'hidden';
|
||||
body.style['padding-top']= '2px';
|
||||
body.style['padding-left']= '5px';
|
||||
// <style type='text/css'>body{padding-top: 2px;padding-left: 5px;}</style>
|
||||
//reset height
|
||||
paramsHeight = paramsHeight == undefined ? params.kindutil.removeUnit(this.height) : paramsHeight;
|
||||
edit.iframe.height(paramsHeight);
|
||||
edit.html("<span id='hint' style='color:#999999;font-size:14px;'>说点什么</span>");
|
||||
this.resize(null,paramsHeight);// Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight)+ paramsHeight , paramsHeight)
|
||||
// params.toolbar_container.hide();
|
||||
if(typeof enableAt === 'function'){
|
||||
enableAt(this, id, type);
|
||||
}
|
||||
|
||||
var iframe = edit.iframe[0]
|
||||
$(iframe.contentDocument.head).append(
|
||||
$("<style type='text/css'>::-webkit-scrollbar{height: 10px;width: 6px !important;background: rgba(0,0,0,.1) !important;} ::-webkit-scrollbar-thumb {border-radius: 6px;background: #ADADAD;};</style>"));
|
||||
}
|
||||
}).loadPlugin('paste');
|
||||
return editor;
|
||||
}
|
||||
|
||||
function sd_check_editor_form_field(params){
|
||||
var result=true;
|
||||
if(params.content!=undefined){
|
||||
if(params.content.isEmpty()){
|
||||
result=false;
|
||||
}
|
||||
if(params.content.html()!=params.textarea.html() || params.issubmit==true){
|
||||
params.textarea.html(params.content.html());
|
||||
params.content.sync();
|
||||
if(params.content.isEmpty() || /^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(params.textarea.html())){
|
||||
params.contentmsg.html('内容不能为空');
|
||||
params.contentmsg.css({color:'#ff0000'});
|
||||
}else{
|
||||
params.contentmsg.html('填写正确');
|
||||
params.contentmsg.css({color:'#008000'});
|
||||
}
|
||||
params.contentmsg.show();
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function sd_create_form(params){
|
||||
params.form.submit(function(){
|
||||
var flag = false;
|
||||
if(params.form.attr('data-remote') != undefined ){
|
||||
flag = true
|
||||
}
|
||||
var is_checked = sd_check_editor_form_field({
|
||||
issubmit:true,
|
||||
content:params.editor,
|
||||
contentmsg:params.contentmsg,
|
||||
textarea:params.textarea
|
||||
});
|
||||
if(is_checked){
|
||||
if(flag){
|
||||
return true;
|
||||
}else{
|
||||
$(this)[0].submit();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
function sd_reset_editor_form(params){
|
||||
params.form[0].reset();
|
||||
params.textarea.empty();
|
||||
if(params.editor != undefined){
|
||||
params.editor.html(params.textarea.html());
|
||||
}
|
||||
params.contentmsg.hide();
|
||||
}
|
||||
//第二个参数是高度,可以传,可以不传
|
||||
function sd_create_editor_from_data(id){
|
||||
var height = arguments[1] ? arguments[1] : undefined;
|
||||
var width = arguments[2] ? arguments[2] : undefined;
|
||||
var type = arguments[3] ? arguments[3] : undefined;
|
||||
// KindEditor.ready(function (K) {
|
||||
// react 环境不需要ready方法,页面已经加载完了才执行sd_create_editor_from_data
|
||||
var K = KindEditor;
|
||||
$("div[nhname='new_message_" + id + "']").each(function () {
|
||||
var params = {};
|
||||
params.kindutil = K;
|
||||
params.div_form = $(this);
|
||||
params.form = $("form", params.div_form);
|
||||
if (params.form == undefined || params.form.length == 0) {
|
||||
return;
|
||||
}
|
||||
params.textarea = $("textarea[nhname='new_message_textarea_" + id + "']", params.div_form);
|
||||
params.contentmsg = $("span[nhname='contentmsg_" + id + "']", params.div_form);
|
||||
params.toolbar_container = $("div[nhname='toolbar_container_" + id + "']", params.div_form);
|
||||
params.cancel_btn = $("#new_message_cancel_btn_" + id);
|
||||
params.submit_btn = $("#new_message_submit_btn_" + id);
|
||||
params.height = height;
|
||||
params.width = width;
|
||||
if (params.textarea.data('init') == undefined) {
|
||||
params.editor = sd_create_editor(params,id, type);
|
||||
sd_create_form(params);
|
||||
params.cancel_btn.click(function () {
|
||||
sd_reset_editor_form(params);
|
||||
});
|
||||
params.submit_btn.click(function () {
|
||||
var tContents = $("#comment_news_" + id).val();
|
||||
if(tContents != undefined){
|
||||
var beforeImage = tContents.split("<img");
|
||||
var afterImage = tContents.split("/>");
|
||||
if(beforeImage[0] == "" && afterImage[1] == ""){
|
||||
notice_box('不支持纯图片评论<br/>请在评论中增加文字信息');
|
||||
return;
|
||||
}
|
||||
|
||||
if (tContents.startsWith('<') && tContents.endsWith('>')
|
||||
&& (tContents.indexOf('<link') != -1 || tContents.indexOf('<script') != -1 )) {
|
||||
notice_box('不支持包含link或script标签的html内容');
|
||||
return;
|
||||
}
|
||||
}
|
||||
// react环境下,发消息给react组件
|
||||
if (window['__isR'] === true) {
|
||||
$(document).trigger("onReply", { commentContent:tContents, id:id, editor:params.editor } );
|
||||
} else {
|
||||
params.form.submit();
|
||||
}
|
||||
});
|
||||
params.textarea.focus(function (){
|
||||
params.editor.focus();
|
||||
});
|
||||
params.textarea.data('init', 1);
|
||||
$(this).show();
|
||||
|
||||
__editor = params.editor
|
||||
}
|
||||
});
|
||||
// });
|
||||
|
||||
div_form = $("div[nhname='new_message_" + id + "']");
|
||||
$(".ke-edit", div_form).css("height","33px");
|
||||
$(".ke-edit-iframe",div_form).css("height","33px");
|
||||
|
||||
return __editor;
|
||||
}
|
||||
|
||||
|
||||
//第二个参数是高度,可以传,可以不传
|
||||
function sd_create_editor_from_shixun_data(id){
|
||||
var height = arguments[1] ? arguments[1] : undefined;
|
||||
var width = arguments[2] ? arguments[2] : undefined;
|
||||
var type = arguments[3] ? arguments[3] : undefined;
|
||||
// KindEditor.ready(function (K) {
|
||||
// react 环境不需要ready方法,页面已经加载完了才执行sd_create_editor_from_data
|
||||
var K = KindEditor;
|
||||
|
||||
$("div[nhname='new_message_" + id + "']").each(function () {
|
||||
var params = {};
|
||||
params.kindutil = K;
|
||||
params.div_form = $(this);
|
||||
params.form = $("form", params.div_form);
|
||||
if (params.form == undefined || params.form.length == 0) {
|
||||
return;
|
||||
}
|
||||
params.textarea = $("textarea[nhname='new_message_textarea_" + id + "']", params.div_form);
|
||||
params.contentmsg = $("span[nhname='contentmsg_" + id + "']", params.div_form);
|
||||
params.toolbar_container = $("div[nhname='toolbar_container_" + id + "']", params.div_form);
|
||||
params.cancel_btn = $("#new_message_cancel_btn_" + id);
|
||||
params.submit_btn = $("#new_message_submit_btn_" + id);
|
||||
params.height = height;
|
||||
params.width = width;
|
||||
if (params.textarea.data('init') == undefined) {
|
||||
params.editor = sd_create_shixun_editor(params,id, type);
|
||||
window._commentInput = params.editor;
|
||||
sd_create_form(params);
|
||||
params.cancel_btn.click(function () {
|
||||
sd_reset_editor_form(params);
|
||||
});
|
||||
// 在react组件中hide
|
||||
// params.submit_btn.click(function () {
|
||||
// $(this).hide()
|
||||
// });
|
||||
// 非react环境才监听这个click
|
||||
!window['__isR'] && params.submit_btn.click(function () {
|
||||
var tContents = $("#comment_news_" + id).val();
|
||||
|
||||
if(tContents != undefined){
|
||||
var beforeImage = tContents.split("<img");
|
||||
var afterImage = tContents.split("/>");
|
||||
if(beforeImage[0] == "" && afterImage[1] == ""){
|
||||
notice_box('不支持纯图片评论<br/>请在评论中增加文字信息');
|
||||
return;
|
||||
}
|
||||
}
|
||||
params.form.submit();
|
||||
});
|
||||
params.textarea.focus(function (){
|
||||
params.editor.focus();
|
||||
});
|
||||
params.textarea.data('init', 1);
|
||||
$(this).show();
|
||||
}
|
||||
});
|
||||
// });
|
||||
|
||||
div_form = $("div[nhname='new_message_" + id + "']");
|
||||
$(".ke-edit", div_form).css("height","33px");
|
||||
$(".ke-edit-iframe",div_form).css("height","33px");
|
||||
}
|
1383
js/js_min_all.js
|
@ -0,0 +1,197 @@
|
|||
{
|
||||
"name": "educoder",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@monaco-editor/react": "^2.3.0",
|
||||
"@novnc/novnc": "^1.1.0",
|
||||
"antd": "^3.26.15",
|
||||
"array-flatten": "^2.1.2",
|
||||
"autoprefixer": "7.1.6",
|
||||
"axios": "^0.18.1",
|
||||
"babel-core": "6.26.0",
|
||||
"babel-eslint": "7.2.3",
|
||||
"babel-jest": "20.0.3",
|
||||
"babel-loader": "7.1.2",
|
||||
"babel-plugin-syntax-dynamic-import": "^6.18.0",
|
||||
"babel-preset-react-app": "^3.1.1",
|
||||
"babel-runtime": "6.26.0",
|
||||
"bizcharts": "^3.5.8",
|
||||
"bundle-loader": "^0.5.6",
|
||||
"case-sensitive-paths-webpack-plugin": "2.1.1",
|
||||
"chalk": "1.1.3",
|
||||
"classnames": "^2.2.5",
|
||||
"clipboard": "^2.0.6",
|
||||
"codemirror": "^5.53.0",
|
||||
"connected-react-router": "4.4.1",
|
||||
"css-loader": "^3.5.2",
|
||||
"dotenv": "4.0.0",
|
||||
"dotenv-expand": "4.2.0",
|
||||
"echarts": "^4.7.0",
|
||||
"editor.md": "^1.5.0",
|
||||
"eslint": "4.10.0",
|
||||
"eslint-config-react-app": "^2.1.0",
|
||||
"eslint-loader": "^4.0.0",
|
||||
"eslint-plugin-flowtype": "2.39.1",
|
||||
"eslint-plugin-import": "2.8.0",
|
||||
"eslint-plugin-jsx-a11y": "5.1.1",
|
||||
"eslint-plugin-react": "7.4.0",
|
||||
"file-loader": "^6.0.0",
|
||||
"flv.js": "^1.5.0",
|
||||
"fs-extra": "3.0.1",
|
||||
"html-webpack-plugin": "^4.0.4",
|
||||
"immutability-helper": "^2.6.6",
|
||||
"install": "^0.12.2",
|
||||
"jest": "20.0.4",
|
||||
"js-base64": "^2.5.2",
|
||||
"katex": "^0.11.1",
|
||||
"lodash": "^4.17.15",
|
||||
"loglevel": "^1.6.8",
|
||||
"material-ui": "^1.0.0-beta.40",
|
||||
"marked": "^1.0.0",
|
||||
"md5": "^2.2.1",
|
||||
"mini-css-extract-plugin": "^0.9.0",
|
||||
"moment": "^2.23.0",
|
||||
"monaco-editor": "^0.20.0",
|
||||
"monaco-editor-webpack-plugin": "^1.9.0",
|
||||
"numeral": "^2.0.6",
|
||||
"object-assign": "4.1.1",
|
||||
"postcss-flexbugs-fixes": "3.2.0",
|
||||
"postcss-loader": "2.0.8",
|
||||
"promise": "8.0.1",
|
||||
"prop-types": "^15.6.1",
|
||||
"qrcode.react": "^1.0.0",
|
||||
"qs": "^6.9.3",
|
||||
"quill": "^1.3.7",
|
||||
"quill-delta-to-html": "^0.11.0",
|
||||
"raf": "3.4.0",
|
||||
"rc-form": "^2.4.11",
|
||||
"rc-pagination": "^1.21.0",
|
||||
"rc-rate": "^2.6.0",
|
||||
"rc-select": "^8.0.12",
|
||||
"rc-tree": "^1.15.3",
|
||||
"rc-upload": "^2.9.4",
|
||||
"react": "^16.13.1",
|
||||
"react-color": "^2.18.0",
|
||||
"react-beautiful-dnd": "^10.0.4",
|
||||
"react-codemirror": "^1.0.0",
|
||||
"react-codemirror2": "^6.0.1",
|
||||
"react-content-loader": "^3.1.1",
|
||||
"react-cookies": "^0.1.1",
|
||||
"react-datepicker": "^2.14.1",
|
||||
"react-dev-utils": "^9.2.0-next.80",
|
||||
"react-dom": "^16.13.1",
|
||||
"react-hot-loader": "^4.12.20",
|
||||
"react-infinite-scroller": "^1.2.4",
|
||||
"react-loadable": "^5.3.1",
|
||||
"react-monaco-editor": "^0.25.1",
|
||||
"react-player": "^1.15.3",
|
||||
"react-redux": "5.0.7",
|
||||
"react-router": "^4.2.0",
|
||||
"react-router-dom": "^4.2.2",
|
||||
"react-split-pane": "^0.1.91",
|
||||
"react-url-query": "^1.5.0",
|
||||
"react-zmage": "^0.8.5-beta.31",
|
||||
"redux": "^4.0.5",
|
||||
"redux-thunk": "2.3.0",
|
||||
"rsuite": "^4.3.4",
|
||||
"sass-loader": "7.3.1",
|
||||
"scroll-into-view": "^1.14.2",
|
||||
"showdown": "^1.9.1",
|
||||
"showdown-katex": "^0.8.0",
|
||||
"store": "^2.0.12",
|
||||
"style-loader": "0.19.0",
|
||||
"styled-components": "^4.4.1",
|
||||
"sw-precache-webpack-plugin": "0.11.4",
|
||||
"url-loader": "0.6.2",
|
||||
"webpack-cli": "^3.3.11",
|
||||
"webpack-dev-server": "^3.10.3",
|
||||
"webpack-manifest-plugin": "^2.2.0",
|
||||
"whatwg-fetch": "2.0.3",
|
||||
"wrap-md-editor": "^0.2.20"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "node --max_old_space_size=15360 scripts/start.js",
|
||||
"build": "NODE_ENV=production node --max_old_space_size=15360 scripts/build.js",
|
||||
"test-build": "NODE_ENV=testBuild node --max_old_space_size=15360 scripts/build.js",
|
||||
"pre-build": "NODE_ENV=preBuild node --max_old_space_size=15360 scripts/build.js",
|
||||
"gen_stats": "NODE_ENV=production webpack --profile --config=./config/webpack.config.prod.js --json > stats.json",
|
||||
"ana": "webpack-bundle-analyzer ./stats.json",
|
||||
"analyze": "npm run build -- --stats && webpack-bundle-analyzer build/bundle-stats.json",
|
||||
"analyz": "NODE_ENV=production npm_config_report=true npm run build"
|
||||
},
|
||||
"jest": {
|
||||
"collectCoverageFrom": [
|
||||
"src/**/*.{js,jsx,mjs}"
|
||||
],
|
||||
"setupFiles": [
|
||||
"<rootDir>/config/polyfills.js"
|
||||
],
|
||||
"testMatch": [
|
||||
"<rootDir>/src/**/__tests__/**/*.{js,jsx,mjs}",
|
||||
"<rootDir>/src/**/?(*.)(spec|test).{js,jsx,mjs}"
|
||||
],
|
||||
"testEnvironment": "node",
|
||||
"testURL": "http://localhost",
|
||||
"transform": {
|
||||
"^.+\\.(js|jsx|mjs)$": "<rootDir>/node_modules/babel-jest",
|
||||
"^.+\\.css$": "<rootDir>/config/jest/cssTransform.js",
|
||||
"^(?!.*\\.(js|jsx|mjs|css|json)$)": "<rootDir>/config/jest/fileTransform.js"
|
||||
},
|
||||
"transformIgnorePatterns": [
|
||||
"[/\\\\]node_modules[/\\\\].+\\.(js|jsx|mjs)$"
|
||||
],
|
||||
"moduleNameMapper": {
|
||||
"^react-native$": "react-native-web"
|
||||
},
|
||||
"moduleFileExtensions": [
|
||||
"web.js",
|
||||
"mjs",
|
||||
"js",
|
||||
"json",
|
||||
"web.jsx",
|
||||
"jsx",
|
||||
"node"
|
||||
]
|
||||
},
|
||||
"babel": {
|
||||
"presets": [
|
||||
"react",
|
||||
"react-app"
|
||||
],
|
||||
"plugins": [
|
||||
[
|
||||
"import",
|
||||
{
|
||||
"libraryName": "antd",
|
||||
"libraryDirectory": "lib",
|
||||
"style": "css"
|
||||
},
|
||||
"ant"
|
||||
],
|
||||
"syntax-dynamic-import"
|
||||
]
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": "react-app"
|
||||
},
|
||||
"proxy": "http://localhost:3000",
|
||||
"port": "3007",
|
||||
"devDependencies": {
|
||||
"@babel/runtime": "7.0.0-beta.51",
|
||||
"babel-plugin-import": "^1.13.0",
|
||||
"compression-webpack-plugin": "^1.1.12",
|
||||
"concat": "^1.0.3",
|
||||
"happypack": "^5.0.1",
|
||||
"mockjs": "^1.1.0",
|
||||
"node-sass": "^4.12.0",
|
||||
"optimize-css-assets-webpack-plugin": "^5.0.3",
|
||||
"purgecss": "^2.1.2",
|
||||
"reqwest": "^2.0.5",
|
||||
"resize-observer-polyfill": "^1.5.1",
|
||||
"terser-webpack-plugin": "^2.3.5",
|
||||
"uglifyjs-webpack-plugin": "^2.2.0",
|
||||
"webpack": "^4.42.1",
|
||||
"webpack-bundle-analyzer": "^3.7.0"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,239 @@
|
|||
/*******************************************************************************
|
||||
* KindEditor - WYSIWYG HTML Editor for Internet
|
||||
* Copyright (C) 2006-2011 kindsoft.net
|
||||
*
|
||||
* @author Roddy <luolonghao@gmail.com>
|
||||
* @site http://www.kindsoft.net/
|
||||
* @licence http://www.kindsoft.net/license.php
|
||||
*******************************************************************************/
|
||||
|
||||
KindEditor.lang({
|
||||
imagedirectupload:'本地图片',
|
||||
more: '切换到更多功能',
|
||||
less: '切换到简单功能',
|
||||
source : 'HTML代码',
|
||||
preview : '预览',
|
||||
undo : '后退(Ctrl+Z)',
|
||||
redo : '前进(Ctrl+Y)',
|
||||
cut : '剪切(Ctrl+X)',
|
||||
copy : '复制(Ctrl+C)',
|
||||
paste : '粘贴(Ctrl+V)',
|
||||
plainpaste : '粘贴为无格式文本',
|
||||
wordpaste : '从Word粘贴',
|
||||
selectall : '全选(Ctrl+A)',
|
||||
justifyleft : '左对齐',
|
||||
justifycenter : '居中',
|
||||
justifyright : '右对齐',
|
||||
justifyfull : '两端对齐',
|
||||
insertorderedlist : '编号',
|
||||
insertunorderedlist : '项目符号',
|
||||
indent : '增加缩进',
|
||||
outdent : '减少缩进',
|
||||
subscript : '下标',
|
||||
superscript : '上标',
|
||||
formatblock : '段落',
|
||||
fontname : '字体',
|
||||
fontsize : '文字大小',
|
||||
forecolor : '文字颜色',
|
||||
hilitecolor : '文字背景',
|
||||
bold : '粗体(Ctrl+B)',
|
||||
italic : '斜体(Ctrl+I)',
|
||||
underline : '下划线(Ctrl+U)',
|
||||
strikethrough : '删除线',
|
||||
removeformat : '删除格式',
|
||||
image : '图片',
|
||||
multiimage : '批量图片上传',
|
||||
flash : 'Flash',
|
||||
media : '视音频',
|
||||
table : '表格',
|
||||
tablecell : '单元格',
|
||||
hr : '插入横线',
|
||||
emoticons : '插入表情',
|
||||
link : '超级链接',
|
||||
unlink : '取消超级链接',
|
||||
fullscreen : '全屏显示',
|
||||
about : '关于',
|
||||
print : '打印(Ctrl+P)',
|
||||
filemanager : '文件空间',
|
||||
code : '插入程序代码',
|
||||
map : 'Google地图',
|
||||
baidumap : '百度地图',
|
||||
lineheight : '行距',
|
||||
clearhtml : '清理HTML代码',
|
||||
pagebreak : '插入分页符',
|
||||
quickformat : '一键排版',
|
||||
insertfile : '插入文件',
|
||||
template : '插入模板',
|
||||
anchor : '锚点',
|
||||
yes : '确定',
|
||||
no : '取消',
|
||||
close : '关闭',
|
||||
editImage : '图片属性',
|
||||
deleteImage : '删除图片',
|
||||
editFlash : 'Flash属性',
|
||||
deleteFlash : '删除Flash',
|
||||
editMedia : '视音频属性',
|
||||
deleteMedia : '删除视音频',
|
||||
editLink : '超级链接属性',
|
||||
deleteLink : '取消超级链接',
|
||||
editAnchor : '锚点属性',
|
||||
deleteAnchor : '删除锚点',
|
||||
tableprop : '表格属性',
|
||||
tablecellprop : '单元格属性',
|
||||
tableinsert : '插入表格',
|
||||
tabledelete : '删除表格',
|
||||
tablecolinsertleft : '左侧插入列',
|
||||
tablecolinsertright : '右侧插入列',
|
||||
tablerowinsertabove : '上方插入行',
|
||||
tablerowinsertbelow : '下方插入行',
|
||||
tablerowmerge : '向下合并单元格',
|
||||
tablecolmerge : '向右合并单元格',
|
||||
tablerowsplit : '拆分行',
|
||||
tablecolsplit : '拆分列',
|
||||
tablecoldelete : '删除列',
|
||||
tablerowdelete : '删除行',
|
||||
noColor : '无颜色',
|
||||
pleaseSelectFile : '请选择文件。',
|
||||
invalidImg : "请输入有效的URL地址。\n只允许jpg,gif,bmp,png格式。",
|
||||
invalidMedia : "请输入有效的URL地址。\n只允许swf,flv,mp3,wav,wma,wmv,mid,avi,mpg,asf,rm,rmvb格式。",
|
||||
invalidWidth : "宽度必须为数字。",
|
||||
invalidHeight : "高度必须为数字。",
|
||||
invalidBorder : "边框必须为数字。",
|
||||
invalidUrl : "请输入有效的URL地址。",
|
||||
invalidRows : '行数为必选项,只允许输入大于0的数字。',
|
||||
invalidCols : '列数为必选项,只允许输入大于0的数字。',
|
||||
invalidPadding : '边距必须为数字。',
|
||||
invalidSpacing : '间距必须为数字。',
|
||||
invalidJson : '服务器发生故障。',
|
||||
uploadSuccess : '上传成功。',
|
||||
cutError : '您的浏览器安全设置不允许使用剪切操作,请使用快捷键(Ctrl+X)来完成。',
|
||||
copyError : '您的浏览器安全设置不允许使用复制操作,请使用快捷键(Ctrl+C)来完成。',
|
||||
pasteError : '您的浏览器安全设置不允许使用粘贴操作,请使用快捷键(Ctrl+V)来完成。',
|
||||
ajaxLoading : '加载中,请稍候 ...',
|
||||
uploadLoading : '上传中,请稍候 ...',
|
||||
uploadError : '上传错误',
|
||||
'plainpaste.comment' : '请使用快捷键(Ctrl+V)把内容粘贴到下面的方框里。',
|
||||
'wordpaste.comment' : '请使用快捷键(Ctrl+V)把内容粘贴到下面的方框里。',
|
||||
'code.pleaseInput' : '请输入程序代码。',
|
||||
'link.url' : 'URL',
|
||||
'link.linkType' : '打开类型',
|
||||
'link.newWindow' : '新窗口',
|
||||
'link.selfWindow' : '当前窗口',
|
||||
'flash.url' : 'URL',
|
||||
'flash.width' : '宽度',
|
||||
'flash.height' : '高度',
|
||||
'flash.upload' : '上传',
|
||||
'flash.viewServer' : '文件空间',
|
||||
'media.url' : 'URL',
|
||||
'media.width' : '宽度',
|
||||
'media.height' : '高度',
|
||||
'media.autostart' : '自动播放',
|
||||
'media.upload' : '上传',
|
||||
'media.viewServer' : '文件空间',
|
||||
'image.remoteImage' : '网络图片',
|
||||
'image.localImage' : '本地上传',
|
||||
'image.remoteUrl' : '图片地址',
|
||||
'image.localUrl' : '上传文件',
|
||||
'image.size' : '图片大小',
|
||||
'image.width' : '宽',
|
||||
'image.height' : '高',
|
||||
'image.resetSize' : '重置大小',
|
||||
'image.align' : '对齐方式',
|
||||
'image.defaultAlign' : '默认方式',
|
||||
'image.leftAlign' : '左对齐',
|
||||
'image.rightAlign' : '右对齐',
|
||||
'image.imgTitle' : '图片说明',
|
||||
'image.upload' : '浏览...',
|
||||
'image.viewServer' : '图片空间',
|
||||
'multiimage.uploadDesc' : '允许用户同时上传<%=uploadLimit%>张图片,单张图片容量不超过<%=sizeLimit%>',
|
||||
'multiimage.startUpload' : '开始上传',
|
||||
'multiimage.clearAll' : '全部清空',
|
||||
'multiimage.insertAll' : '全部插入',
|
||||
'multiimage.queueLimitExceeded' : '文件数量超过限制。',
|
||||
'multiimage.fileExceedsSizeLimit' : '文件大小超过限制。',
|
||||
'multiimage.zeroByteFile' : '无法上传空文件。',
|
||||
'multiimage.invalidFiletype' : '文件类型不正确。',
|
||||
'multiimage.unknownError' : '发生异常,无法上传。',
|
||||
'multiimage.pending' : '等待上传',
|
||||
'multiimage.uploadError' : '上传失败',
|
||||
'filemanager.emptyFolder' : '空文件夹',
|
||||
'filemanager.moveup' : '移到上一级文件夹',
|
||||
'filemanager.viewType' : '显示方式:',
|
||||
'filemanager.viewImage' : '缩略图',
|
||||
'filemanager.listImage' : '详细信息',
|
||||
'filemanager.orderType' : '排序方式:',
|
||||
'filemanager.fileName' : '名称',
|
||||
'filemanager.fileSize' : '大小',
|
||||
'filemanager.fileType' : '类型',
|
||||
'insertfile.url' : 'URL',
|
||||
'insertfile.title' : '文件说明',
|
||||
'insertfile.upload' : '上传',
|
||||
'insertfile.viewServer' : '文件空间',
|
||||
'table.cells' : '单元格数',
|
||||
'table.rows' : '行数',
|
||||
'table.cols' : '列数',
|
||||
'table.size' : '大小',
|
||||
'table.width' : '宽度',
|
||||
'table.height' : '高度',
|
||||
'table.percent' : '%',
|
||||
'table.px' : 'px',
|
||||
'table.space' : '边距间距',
|
||||
'table.padding' : '边距',
|
||||
'table.spacing' : '间距',
|
||||
'table.align' : '对齐方式',
|
||||
'table.textAlign' : '水平对齐',
|
||||
'table.verticalAlign' : '垂直对齐',
|
||||
'table.alignDefault' : '默认',
|
||||
'table.alignLeft' : '左对齐',
|
||||
'table.alignCenter' : '居中',
|
||||
'table.alignRight' : '右对齐',
|
||||
'table.alignTop' : '顶部',
|
||||
'table.alignMiddle' : '中部',
|
||||
'table.alignBottom' : '底部',
|
||||
'table.alignBaseline' : '基线',
|
||||
'table.border' : '边框',
|
||||
'table.borderWidth' : '边框',
|
||||
'table.borderColor' : '颜色',
|
||||
'table.backgroundColor' : '背景颜色',
|
||||
'map.address' : '地址: ',
|
||||
'map.search' : '搜索',
|
||||
'baidumap.address' : '地址: ',
|
||||
'baidumap.search' : '搜索',
|
||||
'baidumap.insertDynamicMap' : '插入动态地图',
|
||||
'anchor.name' : '锚点名称',
|
||||
'formatblock.formatBlock' : {
|
||||
h1 : '标题 1',
|
||||
h2 : '标题 2',
|
||||
h3 : '标题 3',
|
||||
h4 : '标题 4',
|
||||
p : '正 文'
|
||||
},
|
||||
'fontname.fontName' : {
|
||||
'SimSun' : '宋体',
|
||||
'NSimSun' : '新宋体',
|
||||
'FangSong_GB2312' : '仿宋_GB2312',
|
||||
'KaiTi_GB2312' : '楷体_GB2312',
|
||||
'SimHei' : '黑体',
|
||||
'Microsoft YaHei' : '微软雅黑',
|
||||
'Arial' : 'Arial',
|
||||
'Arial Black' : 'Arial Black',
|
||||
'Times New Roman' : 'Times New Roman',
|
||||
'Courier New' : 'Courier New',
|
||||
'Tahoma' : 'Tahoma',
|
||||
'Verdana' : 'Verdana'
|
||||
},
|
||||
'lineheight.lineHeight' : [
|
||||
{'1' : '单倍行距'},
|
||||
{'1.5' : '1.5倍行距'},
|
||||
{'2' : '2倍行距'},
|
||||
{'2.5' : '2.5倍行距'},
|
||||
{'3' : '3倍行距'}
|
||||
],
|
||||
'template.selectTemplate' : '可选模板',
|
||||
'template.replaceContent' : '替换当前内容',
|
||||
'template.fileList' : {
|
||||
'1.html' : '图片和文字',
|
||||
'2.html' : '表格',
|
||||
'3.html' : '项目编号'
|
||||
}
|
||||
}, 'zh_CN');
|
|
@ -0,0 +1,71 @@
|
|||
/*******************************************************************************
|
||||
* KindEditor - WYSIWYG HTML Editor for Internet
|
||||
* Copyright (C) 2006-2011 kindsoft.net
|
||||
*
|
||||
* @author Roddy <luolonghao@gmail.com>
|
||||
* @site http://www.kindsoft.net/
|
||||
* @licence http://www.kindsoft.net/license.php
|
||||
*******************************************************************************/
|
||||
|
||||
KindEditor.plugin('autoheight', function(K) {
|
||||
var self = this;
|
||||
//self.autoHeightMode = true;
|
||||
if (!self.autoHeightMode) {
|
||||
return;
|
||||
}
|
||||
|
||||
var minHeight;
|
||||
|
||||
function hideScroll() {
|
||||
var edit = self.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe[0].scroll = 'no';
|
||||
body.style.overflowY = 'hidden';
|
||||
}
|
||||
|
||||
function resetHeight() {
|
||||
var edit = self.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe.height(minHeight);
|
||||
|
||||
//最高418 超过用滚动条
|
||||
self.resize(null, Math.max(
|
||||
(K.IE ? body.scrollHeight : body.offsetHeight) > 385 ? 385+33 : (K.IE ? body.scrollHeight : body.offsetHeight)
|
||||
+ 33, minHeight));
|
||||
|
||||
if( self.height == "418px" ){
|
||||
edit.iframe[0].scroll = 'yes';
|
||||
body.style.overflowY = 'auto';
|
||||
}
|
||||
else{
|
||||
hideScroll();
|
||||
}
|
||||
}
|
||||
|
||||
function init() {
|
||||
minHeight = K.removeUnit(self.height);
|
||||
|
||||
self.edit.afterChange(resetHeight);
|
||||
hideScroll();
|
||||
var edit = self.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe.height(minHeight);
|
||||
self.resize(null, Math.max(
|
||||
((K.IE ? body.scrollHeight : body.offsetHeight) > 250 ? 250 : (K.IE ? body.scrollHeight : body.offsetHeight)) //限制初始化太高的情况
|
||||
+ 33, minHeight));
|
||||
}
|
||||
|
||||
if (self.isCreated) {
|
||||
init();
|
||||
} else {
|
||||
self.afterCreate(init);
|
||||
}
|
||||
});
|
||||
|
||||
/*
|
||||
* 如何实现真正的自动高度?
|
||||
* 修改编辑器高度之后,再次获取body内容高度时,最小值只会是当前iframe的设置高度,这样就导致高度只增不减。
|
||||
* 所以每次获取body内容高度之前,先将iframe的高度重置为最小高度,这样就能获取body的实际高度。
|
||||
* 由此就实现了真正的自动高度
|
||||
* 测试:chrome、firefox、IE9、IE8
|
||||
* */
|
|
@ -0,0 +1,56 @@
|
|||
.ke-content {
|
||||
font-family: "微软雅黑","宋体";
|
||||
}
|
||||
.ke-content pre {
|
||||
font-size:9pt;
|
||||
font-family:Courier New,Arial;
|
||||
border:1px solid #ddd;
|
||||
border-left:5px solid #6CE26C;
|
||||
background:#f6f6f6;
|
||||
padding:5px;
|
||||
}
|
||||
|
||||
.ke-content code {
|
||||
margin: 0 2px;
|
||||
padding: 0 5px;
|
||||
white-space: nowrap;
|
||||
border: 1px solid #DDD;
|
||||
background-color: #F6F6F6;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
.ke-content pre>code {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
white-space: pre;
|
||||
border: none;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
.ke-content pre code {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.ke-content p {
|
||||
/*margin: 0 0 15px 0;*/
|
||||
/*margin-bottom:15pt;*/
|
||||
line-height:1.5;
|
||||
/*letter-spacing: 1px;*/
|
||||
}
|
||||
|
||||
.ke-content div.ref {border:1px solid #ddd;margin:0 0 10px 0;padding:2px;font-size:9pt;background:#ffe;}
|
||||
.ke-content div.ref h4 {margin:0;padding:1px 3px;background:#CC9966;color:#fff;font-size:9pt;font-weight:normal;}
|
||||
.ke-content div.ref .ref_body {margin:0;padding:2px;line-height:20px;color:#666;font-size:9pt;}
|
||||
|
||||
|
||||
.ke-content blockquote{background: none;border: none;padding: 0px;margin: 0 0 0 40px;}
|
||||
span.at {color:#269ac9;}
|
||||
span.at a{color:#269ac9;text-decoration: none;}
|
||||
|
||||
/*yk*/
|
||||
.ke-content ol li{list-style-type: decimal;}
|
||||
.ke-content ul li{list-style-type: disc;}
|
||||
.ke-content ol,.ke-content ul,.ke-content h1,.ke-content h2,.ke-content h3,.ke-content h4{margin-top:0;margin-bottom: 0;}
|
||||
.ke-content a{color: #136ec2;}
|
||||
.ke-content a:link,.ke-content a:visited{text-decoration:none;}
|
|
@ -0,0 +1,361 @@
|
|||
// Generated by CoffeeScript 1.9.0
|
||||
|
||||
/*
|
||||
paste.js is an interface to read data ( text / image ) from clipboard in different browsers. It also contains several hacks.
|
||||
https://github.com/layerssss/paste.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
var $, Paste, createHiddenEditable, dataURLtoBlob;
|
||||
|
||||
$ = window.jQuery;
|
||||
|
||||
$.paste = function(pasteContainer) {
|
||||
var pm;
|
||||
if (typeof console !== "undefined" && console !== null) {
|
||||
console.log("DEPRECATED: This method is deprecated. Please use $.fn.pastableNonInputable() instead.");
|
||||
}
|
||||
pm = Paste.mountNonInputable(pasteContainer);
|
||||
return pm._container;
|
||||
};
|
||||
|
||||
$.fn.pastableNonInputable = function() {
|
||||
var el, _i, _len;
|
||||
for (_i = 0, _len = this.length; _i < _len; _i++) {
|
||||
el = this[_i];
|
||||
Paste.mountNonInputable(el);
|
||||
}
|
||||
return this;
|
||||
};
|
||||
|
||||
$.fn.pastableTextarea = function() {
|
||||
var el, _i, _len;
|
||||
for (_i = 0, _len = this.length; _i < _len; _i++) {
|
||||
el = this[_i];
|
||||
Paste.mountTextarea(el);
|
||||
}
|
||||
return this;
|
||||
};
|
||||
|
||||
$.fn.pastableContenteditable = function() {
|
||||
var el, _i, _len;
|
||||
for (_i = 0, _len = this.length; _i < _len; _i++) {
|
||||
el = this[_i];
|
||||
Paste.mountContenteditable(el);
|
||||
}
|
||||
return this;
|
||||
};
|
||||
|
||||
dataURLtoBlob = function(dataURL, sliceSize) {
|
||||
var b64Data, byteArray, byteArrays, byteCharacters, byteNumbers, contentType, i, m, offset, slice, _ref;
|
||||
if (sliceSize == null) {
|
||||
sliceSize = 512;
|
||||
}
|
||||
if (!(m = dataURL.match(/^data\:([^\;]+)\;base64\,(.+)$/))) {
|
||||
return null;
|
||||
}
|
||||
_ref = m, m = _ref[0], contentType = _ref[1], b64Data = _ref[2];
|
||||
byteCharacters = atob(b64Data);
|
||||
byteArrays = [];
|
||||
offset = 0;
|
||||
while (offset < byteCharacters.length) {
|
||||
slice = byteCharacters.slice(offset, offset + sliceSize);
|
||||
byteNumbers = new Array(slice.length);
|
||||
i = 0;
|
||||
while (i < slice.length) {
|
||||
byteNumbers[i] = slice.charCodeAt(i);
|
||||
i++;
|
||||
}
|
||||
byteArray = new Uint8Array(byteNumbers);
|
||||
byteArrays.push(byteArray);
|
||||
offset += sliceSize;
|
||||
}
|
||||
return new Blob(byteArrays, {
|
||||
type: contentType
|
||||
});
|
||||
};
|
||||
|
||||
createHiddenEditable = function() {
|
||||
return $(document.createElement('div')).attr('contenteditable', true).css({
|
||||
width: 1,
|
||||
height: 1,
|
||||
position: 'fixed',
|
||||
left: -100,
|
||||
overflow: 'hidden'
|
||||
});
|
||||
};
|
||||
|
||||
Paste = (function() {
|
||||
Paste.prototype._target = null;
|
||||
|
||||
Paste.prototype._container = null;
|
||||
|
||||
Paste.mountNonInputable = function(nonInputable) {
|
||||
var paste;
|
||||
paste = new Paste(createHiddenEditable().appendTo(nonInputable), nonInputable);
|
||||
$(nonInputable).on('click', (function(_this) {
|
||||
return function() {
|
||||
return paste._container.focus();
|
||||
};
|
||||
})(this));
|
||||
paste._container.on('focus', (function(_this) {
|
||||
return function() {
|
||||
return $(nonInputable).addClass('pastable-focus');
|
||||
};
|
||||
})(this));
|
||||
return paste._container.on('blur', (function(_this) {
|
||||
return function() {
|
||||
return $(nonInputable).removeClass('pastable-focus');
|
||||
};
|
||||
})(this));
|
||||
};
|
||||
|
||||
Paste.mountTextarea = function(textarea) {
|
||||
var ctlDown, paste;
|
||||
if (-1 !== navigator.userAgent.toLowerCase().indexOf('chrome')) {
|
||||
return this.mountContenteditable(textarea);
|
||||
}
|
||||
paste = new Paste(createHiddenEditable().insertBefore(textarea), textarea);
|
||||
ctlDown = false;
|
||||
$(textarea).on('keyup', function(ev) {
|
||||
var _ref;
|
||||
if ((_ref = ev.keyCode) === 17 || _ref === 224) {
|
||||
return ctlDown = false;
|
||||
}
|
||||
});
|
||||
$(textarea).on('keydown', function(ev) {
|
||||
var _ref;
|
||||
if ((_ref = ev.keyCode) === 17 || _ref === 224) {
|
||||
ctlDown = true;
|
||||
}
|
||||
if (ctlDown && ev.keyCode === 86) {
|
||||
return paste._container.focus();
|
||||
}
|
||||
});
|
||||
$(paste._target).on('pasteImage', (function(_this) {
|
||||
return function() {
|
||||
return $(textarea).focus();
|
||||
};
|
||||
})(this));
|
||||
$(paste._target).on('pasteText', (function(_this) {
|
||||
return function() {
|
||||
return $(textarea).focus();
|
||||
};
|
||||
})(this));
|
||||
$(textarea).on('focus', (function(_this) {
|
||||
return function() {
|
||||
return $(textarea).addClass('pastable-focus');
|
||||
};
|
||||
})(this));
|
||||
return $(textarea).on('blur', (function(_this) {
|
||||
return function() {
|
||||
return $(textarea).removeClass('pastable-focus');
|
||||
};
|
||||
})(this));
|
||||
};
|
||||
|
||||
Paste.mountContenteditable = function(contenteditable) {
|
||||
var paste;
|
||||
paste = new Paste(contenteditable, contenteditable);
|
||||
$(contenteditable).on('focus', (function(_this) {
|
||||
return function() {
|
||||
return $(contenteditable).addClass('pastable-focus');
|
||||
};
|
||||
})(this));
|
||||
return $(contenteditable).on('blur', (function(_this) {
|
||||
return function() {
|
||||
return $(contenteditable).removeClass('pastable-focus');
|
||||
};
|
||||
})(this));
|
||||
};
|
||||
|
||||
function Paste(_at__container, _at__target) {
|
||||
this._container = _at__container;
|
||||
this._target = _at__target;
|
||||
this._container = $(this._container);
|
||||
this._target = $(this._target).addClass('pastable');
|
||||
this._container.on('paste', (function(_this) {
|
||||
return function(ev) {
|
||||
var clipboardData, file, item, reader, text, _i, _j, _len, _len1, _ref, _ref1, _ref2, _ref3, _results;
|
||||
if (((_ref = ev.originalEvent) != null ? _ref.clipboardData : void 0) != null) {
|
||||
clipboardData = ev.originalEvent.clipboardData;
|
||||
if (clipboardData.items) {
|
||||
_ref1 = clipboardData.items;
|
||||
for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
|
||||
item = _ref1[_i];
|
||||
if (item.type.match(/^image\//)) {
|
||||
reader = new FileReader();
|
||||
reader.onload = function(event) {
|
||||
return _this._handleImage(event.target.result);
|
||||
};
|
||||
reader.readAsDataURL(item.getAsFile());
|
||||
}
|
||||
if (item.type === 'text/plain') {
|
||||
item.getAsString(function(string) {
|
||||
return _this._target.trigger('pasteText', {
|
||||
text: string
|
||||
});
|
||||
});
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (-1 !== Array.prototype.indexOf.call(clipboardData.types, 'text/plain')) {
|
||||
text = clipboardData.getData('Text');
|
||||
_this._target.trigger('pasteText', {
|
||||
text: text
|
||||
});
|
||||
}
|
||||
_this._checkImagesInContainer(function(src) {
|
||||
return _this._handleImage(src);
|
||||
});
|
||||
}
|
||||
}
|
||||
if (clipboardData = window.clipboardData) {
|
||||
if ((_ref2 = (text = clipboardData.getData('Text'))) != null ? _ref2.length : void 0) {
|
||||
return _this._target.trigger('pasteText', {
|
||||
text: text
|
||||
});
|
||||
} else {
|
||||
_ref3 = clipboardData.files;
|
||||
_results = [];
|
||||
for (_j = 0, _len1 = _ref3.length; _j < _len1; _j++) {
|
||||
file = _ref3[_j];
|
||||
_this._handleImage(URL.createObjectURL(file));
|
||||
_results.push(_this._checkImagesInContainer(function() {}));
|
||||
}
|
||||
return _results;
|
||||
}
|
||||
}
|
||||
};
|
||||
})(this));
|
||||
}
|
||||
|
||||
Paste.prototype._handleImage = function(src) {
|
||||
var loader;
|
||||
loader = new Image();
|
||||
loader.onload = (function(_this) {
|
||||
return function() {
|
||||
var blob, canvas, ctx, dataURL;
|
||||
canvas = document.createElement('canvas');
|
||||
canvas.width = loader.width;
|
||||
canvas.height = loader.height;
|
||||
ctx = canvas.getContext('2d');
|
||||
ctx.drawImage(loader, 0, 0, canvas.width, canvas.height);
|
||||
dataURL = null;
|
||||
try {
|
||||
dataURL = canvas.toDataURL('image/png');
|
||||
blob = dataURLtoBlob(dataURL);
|
||||
} catch (_error) {}
|
||||
if (dataURL) {
|
||||
return _this._target.trigger('pasteImage', {
|
||||
blob: blob,
|
||||
dataURL: dataURL,
|
||||
width: loader.width,
|
||||
height: loader.height
|
||||
});
|
||||
}
|
||||
};
|
||||
})(this);
|
||||
return loader.src = src;
|
||||
};
|
||||
|
||||
Paste.prototype._checkImagesInContainer = function(cb) {
|
||||
var img, timespan, _i, _len, _ref;
|
||||
timespan = Math.floor(1000 * Math.random());
|
||||
_ref = this._container.find('img');
|
||||
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
||||
img = _ref[_i];
|
||||
img["_paste_marked_" + timespan] = true;
|
||||
}
|
||||
return setTimeout((function(_this) {
|
||||
return function() {
|
||||
var _j, _len1, _ref1, _results;
|
||||
_ref1 = _this._container.find('img');
|
||||
_results = [];
|
||||
for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
|
||||
img = _ref1[_j];
|
||||
if (!img["_paste_marked_" + timespan]) {
|
||||
cb(img.src);
|
||||
}
|
||||
//firefox问题处理,因为采用了 pastableContenteditable 模式,故只需要删除默认的粘贴
|
||||
if ($(img).attr('src').startsWith('data:image/')) {
|
||||
_results.push($(img).remove());
|
||||
};
|
||||
}
|
||||
return _results;
|
||||
};
|
||||
})(this), 1);
|
||||
};
|
||||
|
||||
return Paste;
|
||||
|
||||
})();
|
||||
|
||||
}).call(this);
|
||||
|
||||
KindEditor.plugin('paste', function(K) {
|
||||
var editor = this,
|
||||
name = 'paste';
|
||||
if(editor.edit == undefined || editor.edit.iframe == undefined){
|
||||
return;
|
||||
}
|
||||
var contentWindow = editor.edit.iframe[0].contentWindow;
|
||||
//var contentWindow = editor.iframeDoc;
|
||||
//var contentWindow = document.getElementsByTagName('iframe')[0].contentWindow;
|
||||
var nodeBody = contentWindow.document.getElementsByTagName('body')[0];
|
||||
console.log(nodeBody);
|
||||
$(nodeBody).pastableContenteditable();
|
||||
|
||||
dataURItoBlob = function(dataURI) {
|
||||
// convert base64/URLEncoded data component to raw binary data held in a string
|
||||
var byteString;
|
||||
if (dataURI.split(',')[0].indexOf('base64') >= 0)
|
||||
byteString = atob(dataURI.split(',')[1]);
|
||||
else
|
||||
byteString = unescape(dataURI.split(',')[1]);
|
||||
|
||||
// separate out the mime component
|
||||
var mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0];
|
||||
|
||||
// write the bytes of the string to a typed array
|
||||
var ia = new Uint8Array(byteString.length);
|
||||
for (var i = 0; i < byteString.length; i++) {
|
||||
ia[i] = byteString.charCodeAt(i);
|
||||
}
|
||||
|
||||
return new Blob([ia], {type:mimeString});
|
||||
};
|
||||
|
||||
$(nodeBody).on('pasteImage', function(ev, data) {
|
||||
console.log('pasteImage');
|
||||
console.log("dataURL: " + data.dataURL);
|
||||
console.log("width: " + data.width);
|
||||
console.log("height: " + data.height);
|
||||
var blob = dataURItoBlob(data.dataURL);
|
||||
if (data.blob !== null) {
|
||||
var data = new FormData();
|
||||
// data.append("imgFile",blob, "imageFilename.png");
|
||||
data.append("file",blob, "imageFilename.png");
|
||||
console.log(data);
|
||||
$.ajax({
|
||||
url: '/kindeditor/upload?dir=image',
|
||||
url: '/api/attachments.json',
|
||||
contentType: false,
|
||||
type: 'POST',
|
||||
data: data,
|
||||
processData: false,
|
||||
success: function(data) {
|
||||
console.log(data);
|
||||
// editor.exec('insertimage', JSON.parse(data).url);
|
||||
|
||||
// /api/attachments/227362
|
||||
editor.exec('insertimage', '/api/attachments/' + data.id);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
return;
|
||||
|
||||
});
|
||||
|
|
@ -3,7 +3,7 @@
|
|||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>IconFont Demo</title>
|
||||
<link rel="shortcut icon" href="https://gtms04.alicdn.com/tps/i4/TB1_oz6GVXXXXaFXpXXJDFnIXXX-64-64.ico" type="image/x-icon"/>
|
||||
<link rel="shortcut icon" href="https://img.alicdn.com/tps/i4/TB1_oz6GVXXXXaFXpXXJDFnIXXX-64-64.ico" type="image/x-icon"/>
|
||||
<link rel="stylesheet" href="https://g.alicdn.com/thx/cube/1.3.2/cube.min.css">
|
||||
<link rel="stylesheet" href="demo.css">
|
||||
<link rel="stylesheet" href="iconfont.css">
|
||||
|
@ -30,6 +30,222 @@
|
|||
<div class="content unicode" style="display: block;">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">项目类别</div>
|
||||
<div class="code-name">&#xe751;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">点赞</div>
|
||||
<div class="code-name">&#xe752;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">项目类型</div>
|
||||
<div class="code-name">&#xe750;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">选中</div>
|
||||
<div class="code-name">&#xe74b;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">未选中</div>
|
||||
<div class="code-name">&#xe74d;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">复制</div>
|
||||
<div class="code-name">&#xe74a;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">设置</div>
|
||||
<div class="code-name">&#xe74e;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">编辑-优化icon</div>
|
||||
<div class="code-name">&#xe749;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">多行公式</div>
|
||||
<div class="code-name">&#xe748;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">行内公式</div>
|
||||
<div class="code-name">&#xe747;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">取消置顶</div>
|
||||
<div class="code-name">&#xe746;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">置顶</div>
|
||||
<div class="code-name">&#xe745;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">新建简历、我的简历</div>
|
||||
<div class="code-name">&#xe744;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">回复</div>
|
||||
<div class="code-name">&#xe743;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">图片</div>
|
||||
<div class="code-name">&#xe742;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">问题列表</div>
|
||||
<div class="code-name">&#xe741;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">职称</div>
|
||||
<div class="code-name">&#xe73f;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">upload</div>
|
||||
<div class="code-name">&#xe76b;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">发布职位</div>
|
||||
<div class="code-name">&#xe73e;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">职位要求</div>
|
||||
<div class="code-name">&#xe73d;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">公司介绍</div>
|
||||
<div class="code-name">&#xe73c;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">公司地址</div>
|
||||
<div class="code-name">&#xe73b;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">局部刷新键头</div>
|
||||
<div class="code-name">&#xe73a;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">返回</div>
|
||||
<div class="code-name">&#xe739;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">统计</div>
|
||||
<div class="code-name">&#xe738;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">签到-02</div>
|
||||
<div class="code-name">&#xe736;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">下箭头</div>
|
||||
<div class="code-name">&#xe737;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">签到-01</div>
|
||||
<div class="code-name">&#xe735;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">移动</div>
|
||||
<div class="code-name">&#xe734;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">下移2</div>
|
||||
<div class="code-name">&#xe732;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">上移2</div>
|
||||
<div class="code-name">&#xe731;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">下移</div>
|
||||
<div class="code-name">&#xe730;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">上移</div>
|
||||
<div class="code-name">&#xe72f;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">编辑</div>
|
||||
<div class="code-name">&#xe72e;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">删除</div>
|
||||
<div class="code-name">&#xe72d;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">选择</div>
|
||||
<div class="code-name">&#xe72c;</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont"></span>
|
||||
<div class="name">编辑</div>
|
||||
|
@ -2012,6 +2228,330 @@
|
|||
<div class="content font-class">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xiangmuleibie"></span>
|
||||
<div class="name">
|
||||
项目类别
|
||||
</div>
|
||||
<div class="code-name">.icon-xiangmuleibie
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-ziyuan1"></span>
|
||||
<div class="name">
|
||||
点赞
|
||||
</div>
|
||||
<div class="code-name">.icon-ziyuan1
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xiangmuleixing"></span>
|
||||
<div class="name">
|
||||
项目类型
|
||||
</div>
|
||||
<div class="code-name">.icon-xiangmuleixing
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xuanzhong"></span>
|
||||
<div class="name">
|
||||
选中
|
||||
</div>
|
||||
<div class="code-name">.icon-xuanzhong
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-weixuanzhong"></span>
|
||||
<div class="name">
|
||||
未选中
|
||||
</div>
|
||||
<div class="code-name">.icon-weixuanzhong
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-fuzhi4"></span>
|
||||
<div class="name">
|
||||
复制
|
||||
</div>
|
||||
<div class="code-name">.icon-fuzhi4
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-shezhi4"></span>
|
||||
<div class="name">
|
||||
设置
|
||||
</div>
|
||||
<div class="code-name">.icon-shezhi4
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-bianji2X"></span>
|
||||
<div class="name">
|
||||
编辑-优化icon
|
||||
</div>
|
||||
<div class="code-name">.icon-bianji2X
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-duohanggongshi"></span>
|
||||
<div class="name">
|
||||
多行公式
|
||||
</div>
|
||||
<div class="code-name">.icon-duohanggongshi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-hangneigongshi"></span>
|
||||
<div class="name">
|
||||
行内公式
|
||||
</div>
|
||||
<div class="code-name">.icon-hangneigongshi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-quxiaozhiding"></span>
|
||||
<div class="name">
|
||||
取消置顶
|
||||
</div>
|
||||
<div class="code-name">.icon-quxiaozhiding
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-zhiding1"></span>
|
||||
<div class="name">
|
||||
置顶
|
||||
</div>
|
||||
<div class="code-name">.icon-zhiding1
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xinjianjianliwodejianli"></span>
|
||||
<div class="name">
|
||||
新建简历、我的简历
|
||||
</div>
|
||||
<div class="code-name">.icon-xinjianjianliwodejianli
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-huifu"></span>
|
||||
<div class="name">
|
||||
回复
|
||||
</div>
|
||||
<div class="code-name">.icon-huifu
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-tupian"></span>
|
||||
<div class="name">
|
||||
图片
|
||||
</div>
|
||||
<div class="code-name">.icon-tupian
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-wentiliebiao"></span>
|
||||
<div class="name">
|
||||
问题列表
|
||||
</div>
|
||||
<div class="code-name">.icon-wentiliebiao
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-zhicheng"></span>
|
||||
<div class="name">
|
||||
职称
|
||||
</div>
|
||||
<div class="code-name">.icon-zhicheng
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-upload"></span>
|
||||
<div class="name">
|
||||
upload
|
||||
</div>
|
||||
<div class="code-name">.icon-upload
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-fabuzhiwei"></span>
|
||||
<div class="name">
|
||||
发布职位
|
||||
</div>
|
||||
<div class="code-name">.icon-fabuzhiwei
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-zhiweiyaoqiu"></span>
|
||||
<div class="name">
|
||||
职位要求
|
||||
</div>
|
||||
<div class="code-name">.icon-zhiweiyaoqiu
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-gongsijieshao"></span>
|
||||
<div class="name">
|
||||
公司介绍
|
||||
</div>
|
||||
<div class="code-name">.icon-gongsijieshao
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-gongsidizhi"></span>
|
||||
<div class="name">
|
||||
公司地址
|
||||
</div>
|
||||
<div class="code-name">.icon-gongsidizhi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-jubushuaxinjiantou"></span>
|
||||
<div class="name">
|
||||
局部刷新键头
|
||||
</div>
|
||||
<div class="code-name">.icon-jubushuaxinjiantou
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-fanhui"></span>
|
||||
<div class="name">
|
||||
返回
|
||||
</div>
|
||||
<div class="code-name">.icon-fanhui
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-tongji1"></span>
|
||||
<div class="name">
|
||||
统计
|
||||
</div>
|
||||
<div class="code-name">.icon-tongji1
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-qiandao-1"></span>
|
||||
<div class="name">
|
||||
签到-02
|
||||
</div>
|
||||
<div class="code-name">.icon-qiandao-1
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xiajiantou2"></span>
|
||||
<div class="name">
|
||||
下箭头
|
||||
</div>
|
||||
<div class="code-name">.icon-xiajiantou2
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-qiandao-"></span>
|
||||
<div class="name">
|
||||
签到-01
|
||||
</div>
|
||||
<div class="code-name">.icon-qiandao-
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-yidong"></span>
|
||||
<div class="name">
|
||||
移动
|
||||
</div>
|
||||
<div class="code-name">.icon-yidong
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xiayi1"></span>
|
||||
<div class="name">
|
||||
下移2
|
||||
</div>
|
||||
<div class="code-name">.icon-xiayi1
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-shangyi1"></span>
|
||||
<div class="name">
|
||||
上移2
|
||||
</div>
|
||||
<div class="code-name">.icon-shangyi1
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xiayi"></span>
|
||||
<div class="name">
|
||||
下移
|
||||
</div>
|
||||
<div class="code-name">.icon-xiayi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-shangyi"></span>
|
||||
<div class="name">
|
||||
上移
|
||||
</div>
|
||||
<div class="code-name">.icon-shangyi
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-bianji5"></span>
|
||||
<div class="name">
|
||||
编辑
|
||||
</div>
|
||||
<div class="code-name">.icon-bianji5
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-shanchu3"></span>
|
||||
<div class="name">
|
||||
删除
|
||||
</div>
|
||||
<div class="code-name">.icon-shanchu3
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-xuanze"></span>
|
||||
<div class="name">
|
||||
选择
|
||||
</div>
|
||||
<div class="code-name">.icon-xuanze
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<span class="icon iconfont icon-bianji4"></span>
|
||||
<div class="name">
|
||||
|
@ -4939,6 +5479,294 @@
|
|||
<div class="content symbol">
|
||||
<ul class="icon_lists dib-box">
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xiangmuleibie"></use>
|
||||
</svg>
|
||||
<div class="name">项目类别</div>
|
||||
<div class="code-name">#icon-xiangmuleibie</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-ziyuan1"></use>
|
||||
</svg>
|
||||
<div class="name">点赞</div>
|
||||
<div class="code-name">#icon-ziyuan1</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xiangmuleixing"></use>
|
||||
</svg>
|
||||
<div class="name">项目类型</div>
|
||||
<div class="code-name">#icon-xiangmuleixing</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xuanzhong"></use>
|
||||
</svg>
|
||||
<div class="name">选中</div>
|
||||
<div class="code-name">#icon-xuanzhong</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-weixuanzhong"></use>
|
||||
</svg>
|
||||
<div class="name">未选中</div>
|
||||
<div class="code-name">#icon-weixuanzhong</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-fuzhi4"></use>
|
||||
</svg>
|
||||
<div class="name">复制</div>
|
||||
<div class="code-name">#icon-fuzhi4</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-shezhi4"></use>
|
||||
</svg>
|
||||
<div class="name">设置</div>
|
||||
<div class="code-name">#icon-shezhi4</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-bianji2X"></use>
|
||||
</svg>
|
||||
<div class="name">编辑-优化icon</div>
|
||||
<div class="code-name">#icon-bianji2X</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-duohanggongshi"></use>
|
||||
</svg>
|
||||
<div class="name">多行公式</div>
|
||||
<div class="code-name">#icon-duohanggongshi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-hangneigongshi"></use>
|
||||
</svg>
|
||||
<div class="name">行内公式</div>
|
||||
<div class="code-name">#icon-hangneigongshi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-quxiaozhiding"></use>
|
||||
</svg>
|
||||
<div class="name">取消置顶</div>
|
||||
<div class="code-name">#icon-quxiaozhiding</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-zhiding1"></use>
|
||||
</svg>
|
||||
<div class="name">置顶</div>
|
||||
<div class="code-name">#icon-zhiding1</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xinjianjianliwodejianli"></use>
|
||||
</svg>
|
||||
<div class="name">新建简历、我的简历</div>
|
||||
<div class="code-name">#icon-xinjianjianliwodejianli</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-huifu"></use>
|
||||
</svg>
|
||||
<div class="name">回复</div>
|
||||
<div class="code-name">#icon-huifu</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-tupian"></use>
|
||||
</svg>
|
||||
<div class="name">图片</div>
|
||||
<div class="code-name">#icon-tupian</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-wentiliebiao"></use>
|
||||
</svg>
|
||||
<div class="name">问题列表</div>
|
||||
<div class="code-name">#icon-wentiliebiao</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-zhicheng"></use>
|
||||
</svg>
|
||||
<div class="name">职称</div>
|
||||
<div class="code-name">#icon-zhicheng</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-upload"></use>
|
||||
</svg>
|
||||
<div class="name">upload</div>
|
||||
<div class="code-name">#icon-upload</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-fabuzhiwei"></use>
|
||||
</svg>
|
||||
<div class="name">发布职位</div>
|
||||
<div class="code-name">#icon-fabuzhiwei</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-zhiweiyaoqiu"></use>
|
||||
</svg>
|
||||
<div class="name">职位要求</div>
|
||||
<div class="code-name">#icon-zhiweiyaoqiu</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-gongsijieshao"></use>
|
||||
</svg>
|
||||
<div class="name">公司介绍</div>
|
||||
<div class="code-name">#icon-gongsijieshao</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-gongsidizhi"></use>
|
||||
</svg>
|
||||
<div class="name">公司地址</div>
|
||||
<div class="code-name">#icon-gongsidizhi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-jubushuaxinjiantou"></use>
|
||||
</svg>
|
||||
<div class="name">局部刷新键头</div>
|
||||
<div class="code-name">#icon-jubushuaxinjiantou</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-fanhui"></use>
|
||||
</svg>
|
||||
<div class="name">返回</div>
|
||||
<div class="code-name">#icon-fanhui</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-tongji1"></use>
|
||||
</svg>
|
||||
<div class="name">统计</div>
|
||||
<div class="code-name">#icon-tongji1</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-qiandao-1"></use>
|
||||
</svg>
|
||||
<div class="name">签到-02</div>
|
||||
<div class="code-name">#icon-qiandao-1</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xiajiantou2"></use>
|
||||
</svg>
|
||||
<div class="name">下箭头</div>
|
||||
<div class="code-name">#icon-xiajiantou2</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-qiandao-"></use>
|
||||
</svg>
|
||||
<div class="name">签到-01</div>
|
||||
<div class="code-name">#icon-qiandao-</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-yidong"></use>
|
||||
</svg>
|
||||
<div class="name">移动</div>
|
||||
<div class="code-name">#icon-yidong</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xiayi1"></use>
|
||||
</svg>
|
||||
<div class="name">下移2</div>
|
||||
<div class="code-name">#icon-xiayi1</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-shangyi1"></use>
|
||||
</svg>
|
||||
<div class="name">上移2</div>
|
||||
<div class="code-name">#icon-shangyi1</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xiayi"></use>
|
||||
</svg>
|
||||
<div class="name">下移</div>
|
||||
<div class="code-name">#icon-xiayi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-shangyi"></use>
|
||||
</svg>
|
||||
<div class="name">上移</div>
|
||||
<div class="code-name">#icon-shangyi</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-bianji5"></use>
|
||||
</svg>
|
||||
<div class="name">编辑</div>
|
||||
<div class="code-name">#icon-bianji5</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-shanchu3"></use>
|
||||
</svg>
|
||||
<div class="name">删除</div>
|
||||
<div class="code-name">#icon-shanchu3</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-xuanze"></use>
|
||||
</svg>
|
||||
<div class="name">选择</div>
|
||||
<div class="code-name">#icon-xuanze</div>
|
||||
</li>
|
||||
|
||||
<li class="dib">
|
||||
<svg class="icon svg-icon" aria-hidden="true">
|
||||
<use xlink:href="#icon-bianji4"></use>
|
|
@ -5,6 +5,258 @@
|
|||
"css_prefix_text": "icon-",
|
||||
"description": "",
|
||||
"glyphs": [
|
||||
{
|
||||
"icon_id": "14599181",
|
||||
"name": "项目类别",
|
||||
"font_class": "xiangmuleibie",
|
||||
"unicode": "e751",
|
||||
"unicode_decimal": 59217
|
||||
},
|
||||
{
|
||||
"icon_id": "1687276",
|
||||
"name": "点赞",
|
||||
"font_class": "ziyuan1",
|
||||
"unicode": "e752",
|
||||
"unicode_decimal": 59218
|
||||
},
|
||||
{
|
||||
"icon_id": "14599229",
|
||||
"name": "项目类型",
|
||||
"font_class": "xiangmuleixing",
|
||||
"unicode": "e750",
|
||||
"unicode_decimal": 59216
|
||||
},
|
||||
{
|
||||
"icon_id": "14514445",
|
||||
"name": "选中",
|
||||
"font_class": "xuanzhong",
|
||||
"unicode": "e74b",
|
||||
"unicode_decimal": 59211
|
||||
},
|
||||
{
|
||||
"icon_id": "14514446",
|
||||
"name": "未选中",
|
||||
"font_class": "weixuanzhong",
|
||||
"unicode": "e74d",
|
||||
"unicode_decimal": 59213
|
||||
},
|
||||
{
|
||||
"icon_id": "14484580",
|
||||
"name": "复制",
|
||||
"font_class": "fuzhi4",
|
||||
"unicode": "e74a",
|
||||
"unicode_decimal": 59210
|
||||
},
|
||||
{
|
||||
"icon_id": "14484287",
|
||||
"name": "设置",
|
||||
"font_class": "shezhi4",
|
||||
"unicode": "e74e",
|
||||
"unicode_decimal": 59214
|
||||
},
|
||||
{
|
||||
"icon_id": "14476133",
|
||||
"name": "编辑-优化icon",
|
||||
"font_class": "bianji2X",
|
||||
"unicode": "e749",
|
||||
"unicode_decimal": 59209
|
||||
},
|
||||
{
|
||||
"icon_id": "14364807",
|
||||
"name": "多行公式",
|
||||
"font_class": "duohanggongshi",
|
||||
"unicode": "e748",
|
||||
"unicode_decimal": 59208
|
||||
},
|
||||
{
|
||||
"icon_id": "14364804",
|
||||
"name": "行内公式",
|
||||
"font_class": "hangneigongshi",
|
||||
"unicode": "e747",
|
||||
"unicode_decimal": 59207
|
||||
},
|
||||
{
|
||||
"icon_id": "14269491",
|
||||
"name": "取消置顶",
|
||||
"font_class": "quxiaozhiding",
|
||||
"unicode": "e746",
|
||||
"unicode_decimal": 59206
|
||||
},
|
||||
{
|
||||
"icon_id": "14269490",
|
||||
"name": "置顶",
|
||||
"font_class": "zhiding1",
|
||||
"unicode": "e745",
|
||||
"unicode_decimal": 59205
|
||||
},
|
||||
{
|
||||
"icon_id": "14240818",
|
||||
"name": "新建简历、我的简历",
|
||||
"font_class": "xinjianjianliwodejianli",
|
||||
"unicode": "e744",
|
||||
"unicode_decimal": 59204
|
||||
},
|
||||
{
|
||||
"icon_id": "14108259",
|
||||
"name": "回复",
|
||||
"font_class": "huifu",
|
||||
"unicode": "e743",
|
||||
"unicode_decimal": 59203
|
||||
},
|
||||
{
|
||||
"icon_id": "14102491",
|
||||
"name": "图片",
|
||||
"font_class": "tupian",
|
||||
"unicode": "e742",
|
||||
"unicode_decimal": 59202
|
||||
},
|
||||
{
|
||||
"icon_id": "14102400",
|
||||
"name": "问题列表",
|
||||
"font_class": "wentiliebiao",
|
||||
"unicode": "e741",
|
||||
"unicode_decimal": 59201
|
||||
},
|
||||
{
|
||||
"icon_id": "14101755",
|
||||
"name": "职称",
|
||||
"font_class": "zhicheng",
|
||||
"unicode": "e73f",
|
||||
"unicode_decimal": 59199
|
||||
},
|
||||
{
|
||||
"icon_id": "11488156",
|
||||
"name": "upload",
|
||||
"font_class": "upload",
|
||||
"unicode": "e76b",
|
||||
"unicode_decimal": 59243
|
||||
},
|
||||
{
|
||||
"icon_id": "13839898",
|
||||
"name": "发布职位",
|
||||
"font_class": "fabuzhiwei",
|
||||
"unicode": "e73e",
|
||||
"unicode_decimal": 59198
|
||||
},
|
||||
{
|
||||
"icon_id": "13839895",
|
||||
"name": "职位要求",
|
||||
"font_class": "zhiweiyaoqiu",
|
||||
"unicode": "e73d",
|
||||
"unicode_decimal": 59197
|
||||
},
|
||||
{
|
||||
"icon_id": "13839892",
|
||||
"name": "公司介绍",
|
||||
"font_class": "gongsijieshao",
|
||||
"unicode": "e73c",
|
||||
"unicode_decimal": 59196
|
||||
},
|
||||
{
|
||||
"icon_id": "13839888",
|
||||
"name": "公司地址",
|
||||
"font_class": "gongsidizhi",
|
||||
"unicode": "e73b",
|
||||
"unicode_decimal": 59195
|
||||
},
|
||||
{
|
||||
"icon_id": "13515025",
|
||||
"name": "局部刷新键头",
|
||||
"font_class": "jubushuaxinjiantou",
|
||||
"unicode": "e73a",
|
||||
"unicode_decimal": 59194
|
||||
},
|
||||
{
|
||||
"icon_id": "13458315",
|
||||
"name": "返回",
|
||||
"font_class": "fanhui",
|
||||
"unicode": "e739",
|
||||
"unicode_decimal": 59193
|
||||
},
|
||||
{
|
||||
"icon_id": "13458287",
|
||||
"name": "统计",
|
||||
"font_class": "tongji1",
|
||||
"unicode": "e738",
|
||||
"unicode_decimal": 59192
|
||||
},
|
||||
{
|
||||
"icon_id": "13428689",
|
||||
"name": "签到-02",
|
||||
"font_class": "qiandao-1",
|
||||
"unicode": "e736",
|
||||
"unicode_decimal": 59190
|
||||
},
|
||||
{
|
||||
"icon_id": "13428658",
|
||||
"name": "下箭头",
|
||||
"font_class": "xiajiantou2",
|
||||
"unicode": "e737",
|
||||
"unicode_decimal": 59191
|
||||
},
|
||||
{
|
||||
"icon_id": "13427273",
|
||||
"name": "签到-01",
|
||||
"font_class": "qiandao-",
|
||||
"unicode": "e735",
|
||||
"unicode_decimal": 59189
|
||||
},
|
||||
{
|
||||
"icon_id": "13353315",
|
||||
"name": "移动",
|
||||
"font_class": "yidong",
|
||||
"unicode": "e734",
|
||||
"unicode_decimal": 59188
|
||||
},
|
||||
{
|
||||
"icon_id": "13247262",
|
||||
"name": "下移2",
|
||||
"font_class": "xiayi1",
|
||||
"unicode": "e732",
|
||||
"unicode_decimal": 59186
|
||||
},
|
||||
{
|
||||
"icon_id": "13247261",
|
||||
"name": "上移2",
|
||||
"font_class": "shangyi1",
|
||||
"unicode": "e731",
|
||||
"unicode_decimal": 59185
|
||||
},
|
||||
{
|
||||
"icon_id": "13247178",
|
||||
"name": "下移",
|
||||
"font_class": "xiayi",
|
||||
"unicode": "e730",
|
||||
"unicode_decimal": 59184
|
||||
},
|
||||
{
|
||||
"icon_id": "13247175",
|
||||
"name": "上移",
|
||||
"font_class": "shangyi",
|
||||
"unicode": "e72f",
|
||||
"unicode_decimal": 59183
|
||||
},
|
||||
{
|
||||
"icon_id": "13247173",
|
||||
"name": "编辑",
|
||||
"font_class": "bianji5",
|
||||
"unicode": "e72e",
|
||||
"unicode_decimal": 59182
|
||||
},
|
||||
{
|
||||
"icon_id": "13247168",
|
||||
"name": "删除",
|
||||
"font_class": "shanchu3",
|
||||
"unicode": "e72d",
|
||||
"unicode_decimal": 59181
|
||||
},
|
||||
{
|
||||
"icon_id": "13183780",
|
||||
"name": "选择",
|
||||
"font_class": "xuanze",
|
||||
"unicode": "e72c",
|
||||
"unicode_decimal": 59180
|
||||
},
|
||||
{
|
||||
"icon_id": "2077714",
|
||||
"name": "编辑",
|
|
@ -20,6 +20,114 @@ Created by iconfont
|
|||
/>
|
||||
<missing-glyph />
|
||||
|
||||
<glyph glyph-name="xiangmuleibie" unicode="" d="M542.117647 317.741176c-6.023529 0-12.047059 0-18.070588 6.02353l-481.882353 246.964706C24.094118 576.752941 12.047059 594.823529 12.047059 612.894118c0 18.070588 12.047059 30.117647 24.094117 42.164706L505.976471 877.929412c12.047059 6.023529 24.094118 6.023529 42.164705 0l493.929412-234.917647c18.070588-6.023529 24.094118-24.094118 24.094118-42.164706s-12.047059-30.117647-24.094118-42.164706L566.211765 323.764706c-6.023529-6.023529-18.070588-6.023529-24.094118-6.02353zM162.635294 612.894118L542.117647 414.117647l373.458824 186.729412-385.505883 186.729412-367.435294-174.682353zM542.117647 124.988235c-6.023529 0-12.047059 0-18.070588 6.02353L42.164706 353.882353C18.070588 365.929412 12.047059 390.023529 18.070588 414.117647s36.141176 30.117647 60.235294 24.094118l457.788236-216.847059 457.788235 240.941176c24.094118 12.047059 48.188235 6.023529 60.235294-18.070588 12.047059-24.094118 6.023529-48.188235-18.070588-60.235294l-481.882353-252.988235s-6.023529-6.023529-12.047059-6.02353zM542.117647-85.835294c-6.023529 0-12.047059 0-18.070588 6.023529l-481.882353 222.870589c-24.094118 12.047059-30.117647 36.141176-24.094118 60.235294 12.047059 24.094118 36.141176 30.117647 60.235294 24.094117l457.788236-216.847059 457.788235 240.941177c24.094118 12.047059 48.188235 6.023529 60.235294-18.070588 12.047059-24.094118 6.023529-48.188235-18.070588-60.235294l-481.882353-252.988236c0-6.023529-6.023529-6.023529-12.047059-6.023529z" horiz-adv-x="1084" />
|
||||
|
||||
|
||||
<glyph glyph-name="ziyuan1" unicode="" d="M627.638-127.995c-0.002-0-0.004-0-0.006-0-41.274 0-79.315 13.84-109.737 37.132-351.096 269.596-625.954 622.565-797.004 1029.886 250.325-459.871 250.891-232.19 392.484-124.58 212.388 161.415 413.449 50.407 514.829-56.637 101.38 104.778 302.441 215.787 514.829 56.637 141.026-107.61 141.592-335.29 47.575-459.892-274.547-346.797-631.598-616.683-1042.062-781.805 559.118 312.875 521.353 299.254 480.407 299.254-0.462 0-0.925 0.002-1.386 0.005zM336.524 813.31c-67.62-1.528-129.121-26.527-176.957-67.135-96.599-73.325-97.732-250.032-28.068-341.784 264.168-335.001 607.892-595.919 1003.221-756.039-551.982 312.962-531.271 305.34-508.781 305.34 22.491 0 43.201 7.622 59.69 20.423 338.927 260.212 604.142 600.67 769.28 993.557-263.734-472.096-264.867-295.389-364.548-219.495-231.645 178.406-421.945-65.132-429.874-75.893-7.61-10-19.509-16.397-32.903-16.425-0.033-0.001-0.137-0.001-0.24-0.001-13.179 0-24.918 6.166-32.489 15.771-5.731 8.583-110.509 141.68-258.331 141.68z" horiz-adv-x="1255" />
|
||||
|
||||
|
||||
<glyph glyph-name="xiangmuleixing" unicode="" d="M844.8-128H179.2C76.8-128 0-51.2 0 44.8V716.8C0 819.2 76.8 896 179.2 896h672C947.2 896 1024 819.2 1024 716.8v-672c0-96-76.8-172.8-179.2-172.8zM179.2 800c-44.8 0-76.8-38.4-76.8-76.8v-672c0-44.8 38.4-76.8 76.8-76.8h672c44.8 0 76.8 38.4 76.8 76.8V716.8c0 44.8-38.4 76.8-76.8 76.8H179.2zM812.8 153.6H256c-19.2 0-38.4 19.2-38.4 38.4s19.2 38.4 38.4 38.4h556.8c19.2 0 38.4-19.2 38.4-38.4s-19.2-38.4-38.4-38.4zM556.8 473.6H256c-19.2 0-38.4 19.2-38.4 38.4s19.2 38.4 38.4 38.4h300.8c19.2 0 38.4-19.2 38.4-38.4s-19.2-38.4-38.4-38.4zM812.8 473.6H704c-19.2 0-38.4 19.2-38.4 38.4s19.2 38.4 38.4 38.4h108.8c19.2 0 38.4-19.2 38.4-38.4s-19.2-38.4-38.4-38.4z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="xuanzhong" unicode="" d="M512 866.461538C245.563077 866.461538 29.538462 650.436923 29.538462 384S245.563077-98.461538 512-98.461538 994.461538 117.563077 994.461538 384 778.436923 866.461538 512 866.461538zM720.384 541.538462l-226.816-314.44677a34.264615 34.264615 0 0 0-55.650462 0l-134.301538 186.092308a8.664615 8.664615 0 0 0 7.010462 13.666462h50.491076a34.264615 34.264615 0 0 0 27.884308-14.296616l76.681846-106.417231 169.314462 234.771693a34.422154 34.422154 0 0 0 27.884308 14.336h50.491076a8.664615 8.664615 0 0 0 7.010462-13.705846z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="weixuanzhong" unicode="" d="M713.373538 555.244308h-50.491076a34.264615 34.264615 0 0 1-27.884308-14.336l-169.314462-234.771693-76.681846 106.417231a34.422154 34.422154 0 0 1-27.884308 14.296616H310.626462a8.664615 8.664615 0 0 1-7.010462-13.666462l134.183385-186.092308a34.264615 34.264615 0 0 1 55.689846 0L720.265846 541.538462a8.585846 8.585846 0 0 1-6.892308 13.705846zM512 866.461538C245.563077 866.461538 29.538462 650.436923 29.538462 384S245.563077-98.461538 512-98.461538 994.461538 117.563077 994.461538 384 778.436923 866.461538 512 866.461538z m0-883.081846C290.816-16.620308 111.379692 162.816 111.379692 384 111.379692 605.184 290.816 784.620308 512 784.620308c221.184 0 400.620308-179.436308 400.620308-400.620308 0-221.184-179.436308-400.620308-400.620308-400.620308z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="fuzhi4" unicode="" d="M791.978667 701.3546670000001H82.773333a37.290667 37.290667 0 0 1-37.376-37.376v-709.290667c0-20.650667 16.725333-37.376 37.376-37.376H791.893333a37.290667 37.290667 0 0 1 37.376 37.376V663.893333a37.290667 37.290667 0 0 1-37.376 37.376z m-46.677334-699.989334H129.365333V617.301333h615.936v-615.936zM941.312 850.688H222.72a9.386667 9.386667 0 0 1-9.301333-9.386667v-65.28c0-5.12 4.266667-9.386667 9.386666-9.386666h671.914667V94.72000000000003c0-5.12 4.266667-9.301333 9.386667-9.301333h65.28c5.12 0 9.386667 4.266667 9.386666 9.386666V813.226667A37.290667 37.290667 0 0 1 941.226667 850.773333z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="shezhi4" unicode="" d="M983.630276 253.910842l-74.802755 63.980852a410.866748 410.866748 0 0 1 0 132.129598l74.802755 63.980852a36.560487 36.560487 0 0 1 10.602541 40.216535l-1.023693 2.924839a506.947706 506.947706 0 0 1-91.035612 157.575697l-2.047387 2.412992a36.706728 36.706728 0 0 1-40.143414 10.821904l-92.863636-32.977559a402.604078 402.604078 0 0 1-113.922476 65.808876L635.281961 857.89008a36.560487 36.560487 0 0 1-29.467753 29.32151L602.670007 887.796558a516.160949 516.160949 0 0 1-181.705618 0l-3.071081-0.584968a36.560487 36.560487 0 0 1-29.467753-29.32151l-18.06088-97.616499a402.01911 402.01911 0 0 1-113.118145-65.516392l-93.594846 33.196922a36.560487 36.560487 0 0 1-40.070293-10.821904l-2.047387-2.412992A509.653182 509.653182 0 0 1 30.571513 557.143518l-1.023693-2.924839a36.706728 36.706728 0 0 1 10.602541-40.216535l75.753328-64.712062a402.01911 402.01911 0 0 1 0-130.447816l-75.753328-64.63894a36.560487 36.560487 0 0 1-10.602541-40.216535l1.023693-2.99796A508.263884 508.263884 0 0 1 121.534004 53.340013l2.047387-2.412992a36.706728 36.706728 0 0 1 40.070293-10.821904l93.594846 33.270043a399.240513 399.240513 0 0 1 113.118145-65.589513l18.06088-97.616499a36.560487 36.560487 0 0 1 29.467753-29.32151l3.071081-0.584968a513.455473 513.455473 0 0 1 181.705618 0l3.07108 0.584968a36.560487 36.560487 0 0 1 29.467753 29.32151l17.914638 97.177773a399.898602 399.898602 0 0 1 113.922476 65.808876l92.863636-33.05068a36.560487 36.560487 0 0 1 40.143414 10.821904l2.047387 2.412992a509.653182 509.653182 0 0 1 91.035612 157.575697l1.023693 2.924839a36.414245 36.414245 0 0 1-10.602541 39.997172zM827.663241 436.493912a323.340943 323.340943 0 0 0 0-105.294201l-7.53146-45.84685 85.332175-72.974731c-12.869291-29.833357-29.248389-57.911811-48.625447-84.089119l-106.025411 37.58418-35.902398-29.467752c-27.274123-22.448139-57.765569-39.997172-90.670006-52.354617l-43.433858-16.305977-20.473873-110.851395c-32.173228-3.656049-64.931424-3.656049-97.104652 0l-20.473873 111.070758-43.141374 16.52534a319.611773 319.611773 0 0 0-89.938797 52.208375l-35.829276 29.613994-106.756621-37.949785a431.706225 431.706225 0 0 0-48.698568 84.089119l86.282748 73.705941-7.458339 45.700608a314.932031 314.932031 0 0 0 0 103.978023l7.458339 45.700609-86.282748 73.70594c12.942412 29.833357 29.248389 57.911811 48.698568 84.08912l106.756621-37.949786 35.829276 29.613995c27.05476 22.228776 57.326843 39.85093 89.938797 52.208374l43.287616 16.305977 20.473873 111.070758c32.026986 3.656049 64.858303 3.656049 97.031531 0l20.473873-110.851395 43.506979-16.305977c32.831317-12.357444 63.322763-29.979599 90.670006-52.354616l35.829277-29.467753 106.025411 37.584181c19.450179-26.177308 35.683035-54.402004 48.698568-84.089119l-85.332175-72.974732 7.385218-45.627487zM512 596.336359a201.082676 201.082676 0 1 1 0-402.165352 201.082676 201.082676 0 0 1 0 402.165352zM602.523765 304.876161c-24.276163-24.129921-56.303149-37.511059-90.523765-37.51106-34.147494 0-66.247602 13.381138-90.450644 37.51106a127.522977 127.522977 0 0 0-37.511059 90.450643c0 34.147494 13.381138 66.320723 37.511059 90.523765 24.129921 24.203042 56.303149 37.437938 90.450644 37.437938 34.147494 0 66.247602-13.234896 90.523765-37.437938 24.129921-24.276163 37.437938-56.303149 37.437938-90.523765 0-34.147494-13.381138-66.247602-37.437938-90.450643z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="bianji2X" unicode="" d="M859.025066 604.880668L733.465686 730.293794a57.18546 57.18546 0 0 0 0 80.805542l68.227665 68.227665a57.18546 57.18546 0 0 0 80.732415 0l125.486253-125.486253c22.303792-22.230665 22.303792-58.50175 0-80.732414l-68.227666-68.227666a56.819824 56.819824 0 0 0-80.659287 0z m-73.858459-153.786474c21.499393 21.426266 26.910805 50.823395 12.065986 65.52196l-152.689567 152.835821c-14.698565 14.698565-44.095694 9.36028-65.595086-12.065986L19.74434 113.100336a63.913161 63.913161 0 0 1-18.866814-38.318646l0.292509-152.835821a43.803185 43.803185 0 0 1 48.629579-48.702707l152.835821-1.243162a63.620653 63.620653 0 0 1 38.318646 18.866814l544.285653 560.154253z m180.258516-432.254802H566.516318c-15.356709 0-29.982147-6.069557-40.658716-16.965508-19.598086-19.598086-51.774048-52.870956-78.611726-80.732414a28.373349 28.373349 0 0 1 20.475612-48.117689h497.264872a58.355495 58.355495 0 0 1 58.209241 58.136113v30.055274a58.062987 58.062987 0 0 1-57.770478 57.624224z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="duohanggongshi" unicode="" d="M665.6 418.133333h17.066667v113.777778H295.822222l193.422222-227.555555-216.177777-216.177778h409.6l34.133333 130.844444h-22.755556c0-11.377778-5.688889-17.066667-11.377777-28.444444s-17.066667-17.066667-28.444445-22.755556H426.666667l164.977777 164.977778-136.533333 159.288889H597.333333c22.755556-5.688889 45.511111-11.377778 56.888889-22.755556 5.688889-17.066667 11.377778-34.133333 11.377778-51.2zM807.822222-116.622222H233.244444c-62.577778 0-119.466667 51.2-119.466666 119.466666V748.088889C113.777778 810.666667 164.977778 867.555556 233.244444 867.555556h443.733334l244.622222-233.244445v-637.155555c0-62.577778-51.2-113.777778-113.777778-113.777778zM233.244444 810.666667c-34.133333 0-62.577778-28.444444-62.577777-62.577778v-750.933333c0-34.133333 28.444444-62.577778 62.577777-62.577778h574.577778c34.133333 0 62.577778 28.444444 62.577778 62.577778V611.555556L654.222222 810.666667H233.244444zM898.844444 594.488889h-176.355555c-45.511111 0-85.333333 39.822222-85.333333 85.333333V839.111111h56.888888v-159.288889c0-17.066667 11.377778-28.444444 28.444445-28.444444h176.355555v-56.888889z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="hangneigongshi" unicode="" d="M907.946667 636.586667h34.133333V896H54.613333l443.733334-525.653333L0-128h942.08l81.92 307.2h-54.613333c0-20.48-13.653333-40.96-27.306667-68.266667s-34.133333-40.96-68.266667-47.786666H348.16l382.293333 375.466666-327.68 375.466667h327.68c61.44-6.826667 102.4-27.306667 129.706667-54.613333 34.133333-34.133333 47.786667-75.093333 47.786667-122.88z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="quxiaozhiding" unicode="" d="M480.492308 29.538462c-31.507692 0-63.015385 15.753846-86.646154 31.507692v7.876923L86.646154 407.630769C70.892308 431.261538 55.138462 462.769231 55.138462 494.276923c0 31.507692 15.753846 63.015385 39.384615 78.769231 23.630769 15.753846 47.261538 31.507692 78.769231 31.507692h102.4V738.461538c0 63.015385 55.138462 118.153846 118.153846 118.153847h228.430769c63.015385 0 118.153846-55.138462 118.153846-118.153847v-133.907692h78.769231c63.015385 0 118.153846-55.138462 118.153846-118.153846 0-31.507692-15.753846-63.015385-31.507692-86.646154l-338.707692-338.707692c-23.630769-23.630769-55.138462-39.384615-86.646154-31.507692zM173.292308 525.784615c-7.876923 0-15.753846 0-23.63077-7.876923-15.753846-15.753846-15.753846-39.384615 0-55.138461l307.2-338.707693c7.876923-15.753846 15.753846-15.753846 23.63077-15.753846 15.753846 0 23.630769 0 31.507692 7.876923l338.707692 338.707693c7.876923 7.876923 7.876923 15.753846 7.876923 31.507692 0 23.630769-15.753846 39.384615-39.384615 39.384615h-157.538462V738.461538c0 23.630769-15.753846 39.384615-39.384615 39.384616H401.723077c-23.630769 0-39.384615-15.753846-39.384615-39.384616v-212.676923H173.292308zM913.723077-96.492308H102.4c-23.630769 0-39.384615 15.753846-39.384615 39.384616s15.753846 39.384615 39.384615 39.384615h811.323077c23.630769 0 39.384615-15.753846 39.384615-39.384615s-23.630769-39.384615-39.384615-39.384616z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="zhiding1" unicode="" d="M622.276923-88.615385H401.723077c-70.892308 0-118.153846 55.138462-118.153846 118.153847V163.446154H173.292308c-31.507692 0-55.138462 7.876923-78.769231 31.507692-47.261538 39.384615-47.261538 118.153846-7.876923 165.415385L393.846154 699.076923c23.630769 23.630769 55.138462 39.384615 86.646154 39.384615 31.507692 0 63.015385-15.753846 86.646154-31.507692l338.707692-338.707692c23.630769-23.630769 31.507692-55.138462 31.507692-86.646154 0-63.015385-55.138462-118.153846-118.153846-118.153846h-78.769231V29.538462c0-63.015385-47.261538-118.153846-118.153846-118.153847zM480.492308 659.692308c-7.876923 0-15.753846 0-23.63077-7.876923L149.661538 305.230769c-7.876923-7.876923-15.753846-15.753846-15.753846-23.630769 0-7.876923 7.876923-23.630769 15.753846-23.630769 7.876923-15.753846 15.753846-15.753846 23.63077-15.753846h181.16923V29.538462c0-23.630769 15.753846-39.384615 39.384616-39.384616h228.430769c23.630769 0 39.384615 15.753846 39.384615 39.384616V242.215385h157.538462c23.630769 0 39.384615 15.753846 39.384615 39.384615 0 7.876923-7.876923 23.630769-7.876923 31.507692L512 651.815385c-7.876923 7.876923-15.753846 15.753846-31.507692 7.876923zM913.723077 785.723077H102.4C78.769231 785.723077 63.015385 801.476923 63.015385 825.107692s15.753846 39.384615 39.384615 39.384616h811.323077c23.630769 0 39.384615-15.753846 39.384615-39.384616s-23.630769-39.384615-39.384615-39.384615z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="xinjianjianliwodejianli" unicode="" d="M698.181818-104.727273H139.636364c-79.127273 0-139.636364 60.509091-139.636364 139.636364V756.363636c0 79.127273 60.509091 139.636364 139.636364 139.636364h712.145454c79.127273 0 139.636364-60.509091 139.636364-139.636364v-595.781818L698.181818-104.727273zM139.636364 802.909091c-27.927273 0-46.545455-18.618182-46.545455-46.545455v-721.454545c0-27.927273 18.618182-46.545455 46.545455-46.545455h521.309091l237.381818 214.109091V756.363636c0 27.927273-18.618182 46.545455-46.545455 46.545455H139.636364zM735.418182-11.636364h-69.818182v181.527273c0 46.545455 37.236364 83.781818 83.781818 83.781818h153.6v-69.818182H744.727273c-4.654545 0-9.309091-4.654545-9.309091-9.30909v-186.181819zM451.490909 160.581818H279.272727c-18.618182 0-37.236364 13.963636-37.236363 37.236364s13.963636 37.236364 37.236363 37.236363h172.218182c18.618182 0 37.236364-13.963636 37.236364-37.236363s-13.963636-37.236364-37.236364-37.236364zM730.763636 356.072727H279.272727c-18.618182 0-37.236364 13.963636-37.236363 37.236364s18.618182 32.581818 37.236363 32.581818h451.490909c18.618182 0 37.236364-13.963636 37.236364-37.236364s-13.963636-32.581818-37.236364-32.581818zM730.763636 551.563636H279.272727c-18.618182 0-37.236364 13.963636-37.236363 37.236364s18.618182 32.581818 37.236363 32.581818h451.490909c18.618182 0 37.236364-13.963636 37.236364-37.236363s-13.963636-32.581818-37.236364-32.581819z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="huifu" unicode="" d="M512-96H166.4c-44.8 6.4-70.4 51.2-64 96 19.2 96 12.8 121.6 12.8 121.6-12.8 25.6-32 51.2-44.8 83.2C44.8 256 32 320 32 384 32 646.4 249.6 864 512 864s480-217.6 480-480-217.6-480-480-480z m0 896C281.6 800 96 614.4 96 384c0-57.6 12.8-108.8 32-160 12.8-25.6 25.6-51.2 38.4-70.4 12.8-19.2 19.2-51.2-6.4-166.4 0-6.4 6.4-19.2 12.8-19.2H512c230.4 0 416 185.6 416 416S742.4 800 512 800zM288 384m-76.8 0a76.8 76.8 0 1 1 153.6 0 76.8 76.8 0 1 1-153.6 0ZM512 384m-76.8 0a76.8 76.8 0 1 1 153.6 0 76.8 76.8 0 1 1-153.6 0ZM736 384m-76.8 0a76.8 76.8 0 1 1 153.6 0 76.8 76.8 0 1 1-153.6 0Z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="tupian" unicode="" d="M1185.684211-128H215.578947c-118.568421 0-215.578947 97.010526-215.578947 215.578947V680.421053c0 118.568421 97.010526 215.578947 215.578947 215.578947h970.105264c118.568421 0 215.578947-97.010526 215.578947-215.578947v-592.842106c0-118.568421-97.010526-215.578947-215.578947-215.578947zM215.578947 788.210526c-59.284211 0-107.789474-48.505263-107.789473-107.789473v-592.842106c0-59.284211 48.505263-107.789474 107.789473-107.789473h970.105264c59.284211 0 107.789474 48.505263 107.789473 107.789473V680.421053c0 59.284211-48.505263 107.789474-107.789473 107.789473H215.578947zM0 179.2l247.915789 145.515789c64.673684 37.726316 145.515789 37.726316 210.189474 5.389474l274.863158-145.515789 258.694737 274.863158c43.115789 43.115789 102.4 59.284211 161.68421 43.115789L1401.263158 427.115789V33.684211c0-91.621053-70.063158-161.684211-161.684211-161.684211H161.684211c-91.621053 0-161.684211 70.063158-161.684211 161.684211M210.189474 578.021053a107.789474 107.789474 0 1 1 215.578947 0 107.789474 107.789474 0 1 1-215.578947 0Z" horiz-adv-x="1401" />
|
||||
|
||||
|
||||
<glyph glyph-name="wentiliebiao" unicode="" d="M512 384m-512 0a512 512 0 1 1 1024 0 512 512 0 1 1-1024 0ZM512 175.261538c-55.138462 0-98.461538 19.692308-129.969231 55.138462-31.507692 35.446154-51.2 82.707692-51.2 141.784615 0 63.015385 15.753846 110.276923 51.2 149.661539 35.446154 35.446154 78.769231 55.138462 137.846154 55.138461 51.2 0 94.523077-19.692308 129.969231-55.138461s47.261538-82.707692 47.261538-141.784616c0-63.015385-15.753846-114.215385-51.2-149.661538l-23.630769-23.630769 110.276923-78.769231h-82.707692l-70.892308 55.138462c-23.630769-3.938462-43.323077-7.876923-66.953846-7.876924z m3.938462 358.4c-39.384615 0-74.830769-15.753846-98.461539-43.323076s-39.384615-66.953846-39.384615-114.215385 11.815385-86.646154 35.446154-114.215385c23.630769-27.569231 55.138462-43.323077 98.461538-43.323077s74.830769 15.753846 98.461538 43.323077c23.630769 27.569231 35.446154 66.953846 35.446154 114.215385 0 51.2-11.815385 90.584615-35.446154 118.153846-19.692308 23.630769-51.2 39.384615-94.523076 39.384615z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="zhicheng" unicode="" d="M1331.2-128h-1160.533333C75.093333-128 0-52.906667 0 42.666667v682.666666C0 820.906667 75.093333 896 170.666667 896h1160.533333C1426.773333 896 1501.866667 820.906667 1501.866667 725.333333v-682.666666c0-95.573333-75.093333-170.666667-170.666667-170.666667zM170.666667 827.733333C116.053333 827.733333 68.266667 779.946667 68.266667 725.333333v-682.666666c0-54.613333 47.786667-102.4 102.4-102.4h1160.533333c54.613333 0 102.4 47.786667 102.4 102.4v682.666666c0 54.613333-47.786667 102.4-102.4 102.4h-1160.533333zM750.933333 56.32c-20.48 0-34.133333 13.653333-34.133333 34.133333 0 129.706667-109.226667 238.933333-238.933333 238.933334s-238.933333-109.226667-238.933334-238.933334c0-20.48-13.653333-34.133333-34.133333-34.133333s-34.133333 13.653333-34.133333 34.133333c0 170.666667 136.533333 307.2 307.2 307.2s307.2-136.533333 307.2-307.2c0-20.48-13.653333-34.133333-34.133334-34.133333zM477.866667 363.52c-88.746667 0-163.84 75.093333-163.84 163.84S389.12 691.2 477.866667 691.2s163.84-75.093333 163.84-163.84S566.613333 363.52 477.866667 363.52zM477.866667 622.933333c-54.613333 0-95.573333-40.96-95.573334-95.573333S423.253333 431.786667 477.866667 431.786667s95.573333 40.96 95.573333 95.573333S532.48 622.933333 477.866667 622.933333zM1262.933333 76.8h-341.333333c-20.48 0-34.133333 13.653333-34.133333 34.133333s13.653333 34.133333 34.133333 34.133334h341.333333c20.48 0 34.133333-13.653333 34.133334-34.133334s-13.653333-34.133333-34.133334-34.133333zM1194.666667 315.733333h-273.066667c-20.48 0-34.133333 13.653333-34.133333 34.133334s13.653333 34.133333 34.133333 34.133333h273.066667c20.48 0 34.133333-13.653333 34.133333-34.133333s-13.653333-34.133333-34.133333-34.133334zM1058.133333 520.533333h-136.533333c-20.48 0-34.133333 13.653333-34.133333 34.133334s13.653333 34.133333 34.133333 34.133333h136.533333c20.48 0 34.133333-13.653333 34.133334-34.133333s-13.653333-34.133333-34.133334-34.133334z" horiz-adv-x="1501" />
|
||||
|
||||
|
||||
<glyph glyph-name="upload" unicode="" d="M704 554.666667h64a64 64 0 0 0 64-64v-362.666667a64 64 0 0 0-64-64H256a64 64 0 0 0-64 64V490.666667a64 64 0 0 0 64 64h64v-64h-64v-362.666667h512V490.666667h-64v64zM517.653333 771.370667l150.826667-150.826667-45.226667-45.269333-74.026666 74.005333v-304.768h-64V648.384l-73.173334-73.130667-45.248 45.248 150.826667 150.848z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="fabuzhiwei" unicode="" d="M851.781818-118.690909H139.636364c-79.127273 0-139.636364 60.509091-139.636364 139.636364V751.709091c0 79.127273 60.509091 139.636364 139.636364 139.636364h470.109091c27.927273 0 46.545455-18.618182 46.545454-46.545455s-18.618182-46.545455-46.545454-46.545455H139.636364c-27.927273 0-46.545455-18.618182-46.545455-46.545454v-730.763636c0-27.927273 18.618182-46.545455 46.545455-46.545455h712.145454c27.927273 0 46.545455 18.618182 46.545455 46.545455V528.290909c0 27.927273 18.618182 46.545455 46.545454 46.545455s46.545455-18.618182 46.545455-46.545455v-507.345454c0-74.472727-60.509091-139.636364-139.636364-139.636364zM721.454545 109.381818H269.963636c-18.618182 0-37.236364 13.963636-37.236363 37.236364s13.963636 37.236364 37.236363 37.236363h451.490909c18.618182 0 37.236364-13.963636 37.236364-37.236363s-13.963636-37.236364-37.236364-37.236364zM721.454545 342.109091H269.963636c-18.618182 0-37.236364 13.963636-37.236363 37.236364s13.963636 37.236364 37.236363 37.236363h451.490909c18.618182 0 37.236364-13.963636 37.236364-37.236363s-13.963636-37.236364-37.236364-37.236364zM442.181818 560.872727H269.963636c-18.618182 0-37.236364 13.963636-37.236363 32.581818s13.963636 37.236364 37.236363 37.236364h172.218182c18.618182 0 37.236364-13.963636 37.236364-37.236364s-13.963636-32.581818-37.236364-32.581818zM656.290909 528.290909c-13.963636 0-23.272727 4.654545-32.581818 13.963636-18.618182 18.618182-18.618182 46.545455 0 65.163637L893.672727 863.418182c18.618182 18.618182 46.545455 18.618182 65.163637 0 18.618182-18.618182 18.618182-46.545455 0-65.163637l-269.963637-256c-9.309091-9.309091-18.618182-13.963636-32.581818-13.963636z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="zhiweiyaoqiu" unicode="" d="M823.652174-128H200.347826c-75.686957 0-133.565217 57.878261-133.565217 133.565217V628.869565c0 75.686957 57.878261 133.565217 133.565217 133.565218h623.304348c75.686957 0 133.565217-57.878261 133.565217-133.565218v-623.304348c0-75.686957-57.878261-133.565217-133.565217-133.565217zM200.347826 673.391304c-26.713043 0-44.521739-17.808696-44.521739-44.521739v-623.304348c0-26.713043 17.808696-44.521739 44.521739-44.521739h623.304348c26.713043 0 44.521739 17.808696 44.521739 44.521739V628.869565c0 26.713043-17.808696 44.521739-44.521739 44.521739H200.347826zM311.652174 642.226087c-26.713043 0-44.521739 17.808696-44.521739 44.521739V838.121739c0 26.713043 17.808696 44.521739 44.521739 44.521739s44.521739-17.808696 44.521739-44.521739v-146.921739c0-26.713043-17.808696-48.973913-44.521739-48.973913zM756.869565 642.226087c-26.713043 0-44.521739 17.808696-44.521739 44.521739V838.121739c0 26.713043 17.808696 44.521739 44.521739 44.521739s44.521739-17.808696 44.521739-44.521739v-146.921739c0-26.713043-17.808696-48.973913-44.521739-48.973913zM721.252174 486.4H302.747826c-17.808696 0-35.617391 13.356522-35.617391 35.617391s13.356522 35.617391 35.617391 35.617392h414.052174c17.808696 0 35.617391-13.356522 35.617391-35.617392s-13.356522-35.617391-31.165217-35.617391zM721.252174 263.791304H302.747826c-17.808696 0-35.617391 13.356522-35.617391 35.617392s13.356522 35.617391 35.617391 35.617391h414.052174c17.808696 0 35.617391-13.356522 35.617391-35.617391s-13.356522-35.617391-31.165217-35.617392zM645.565217 58.991304H302.747826c-17.808696 0-35.617391 13.356522-35.617391 35.617392s13.356522 35.617391 35.617391 35.617391H645.565217c17.808696 0 35.617391-13.356522 35.617392-35.617391s-17.808696-35.617391-35.617392-35.617392z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="gongsijieshao" unicode="" d="M487.619048 569.295238H414.47619c-39.009524 0-68.266667 34.133333-68.266666 73.142857s29.257143 68.266667 68.266666 68.266667H487.619048c39.009524 0 68.266667-29.257143 68.266666-68.266667s-29.257143-73.142857-68.266666-73.142857zM414.47619 661.942857c-9.752381 0-19.504762-9.752381-19.504761-19.504762s9.752381-19.504762 19.504761-19.504762H487.619048c9.752381 0 19.504762 9.752381 19.504762 19.504762s-9.752381 19.504762-19.504762 19.504762H414.47619zM487.619048 340.114286H414.47619c-39.009524 0-68.266667 29.257143-68.266666 68.266666s29.257143 68.266667 68.266666 68.266667H487.619048c39.009524 0 68.266667-29.257143 68.266666-68.266667s-29.257143-68.266667-68.266666-68.266666zM414.47619 427.885714c-9.752381 0-19.504762-9.752381-19.504761-19.504762s9.752381-19.504762 19.504761-19.504762H487.619048c9.752381 0 19.504762 9.752381 19.504762 19.504762s-9.752381 19.504762-19.504762 19.504762H414.47619zM487.619048 106.057143H414.47619c-39.009524 0-68.266667 29.257143-68.266666 68.266667s29.257143 68.266667 68.266666 68.266666H487.619048c39.009524 0 68.266667-29.257143 68.266666-68.266666s-29.257143-68.266667-68.266666-68.266667z m-73.142858 92.647619c-9.752381 0-19.504762-9.752381-19.504761-19.504762s9.752381-19.504762 19.504761-19.504762H487.619048c9.752381 0 19.504762 9.752381 19.504762 19.504762s-9.752381 19.504762-19.504762 19.504762H414.47619zM809.447619-79.238095h-633.904762V798.47619c0 53.638095 43.885714 97.52381 97.52381 97.52381h438.857143c53.638095 0 97.52381-43.885714 97.523809-97.52381v-877.714285z m-536.380952 97.523809h438.857143V798.47619h-438.857143v-780.190476zM1189.790476-79.238095h-463.238095V427.885714c0 53.638095 43.885714 97.52381 97.523809 97.52381h268.190477c53.638095 0 97.52381-43.885714 97.523809-97.52381V-79.238095z m-365.714286 97.523809h268.190477V427.885714h-268.190477V18.285714zM1297.066667-103.619048H68.266667c-29.257143 0-48.761905 19.504762-48.761905 48.761905s19.504762 48.761905 48.761905 48.761905h1223.923809c29.257143 0 48.761905-19.504762 48.761905-48.761905s-19.504762-48.761905-43.885714-48.761905z" horiz-adv-x="1365" />
|
||||
|
||||
|
||||
<glyph glyph-name="gongsidizhi" unicode="" d="M1015.466667-128H93.866667c-46.933333 0-85.333333 38.4-85.333334 85.333333v17.066667l59.733334 307.2c8.533333 38.4 42.666667 68.266667 85.333333 68.266667h85.333333v-85.333334h-85.333333L93.866667-42.666667h921.6l-59.733334 307.2h-89.6v85.333334h89.6c42.666667 0 76.8-29.866667 85.333334-68.266667l59.733333-307.2c4.266667-21.333333 0-46.933333-12.8-64-12.8-17.066667-34.133333-29.866667-55.466667-34.133333-8.533333-4.266667-12.8-4.266667-17.066666-4.266667zM554.666667 76.8l-29.866667 34.133333c-149.333333 153.6-243.2 264.533333-281.6 324.266667-34.133333 42.666667-46.933333 98.133333-46.933333 149.333333C196.266667 755.2 354.133333 896 554.666667 896s358.4-140.8 358.4-311.466667c0-55.466667-17.066667-110.933333-46.933334-157.866666-38.4-55.466667-132.266667-166.4-281.6-320l-29.866666-29.866667zM554.666667 810.666667C401.066667 810.666667 281.6 708.266667 281.6 584.533333c0-38.4 12.8-72.533333 34.133333-106.666666s85.333333-110.933333 243.2-277.333334c157.866667 166.4 217.6 238.933333 238.933334 273.066667 21.333333 34.133333 34.133333 68.266667 34.133333 106.666667-4.266667 128-123.733333 230.4-277.333333 230.4zM550.4 409.6c-72.533333 0-128 55.466667-128 128s55.466667 128 128 128 128-55.466667 128-128-59.733333-128-128-128z m0 213.333333c-46.933333 0-85.333333-38.4-85.333333-85.333333s38.4-85.333333 85.333333-85.333333 85.333333 38.4 85.333333 85.333333-38.4 85.333333-85.333333 85.333333z" horiz-adv-x="1109" />
|
||||
|
||||
|
||||
<glyph glyph-name="jubushuaxinjiantou" unicode="" d="M783.090347-128a35.498667 35.498667 0 0 0-22.528 8.192l-546.133334 477.866667a32.768 32.768 0 0 0-8.874666 22.528 34.133333 34.133333 0 0 0 11.605333 25.941333l546.133333 477.866667a32.768 32.768 0 0 0 47.786667 0 34.133333 34.133333 0 0 0 0-48.469334L288.83968 384l516.778667-449.194667a34.816 34.816 0 0 0 3.413333-48.469333 35.498667 35.498667 0 0 0-25.941333-14.336z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="fanhui" unicode="" d="M590.769231-107.362462H315.076923c-31.507692 0-63.015385 23.630769-63.015385 63.015385s23.630769 63.015385 63.015385 63.015385h275.692308c259.938462 0 378.092308 7.876923 378.092307 252.061538s-118.153846 252.061538-378.092307 252.061539H315.076923c-31.507692 0-63.015385 23.630769-63.015385 63.015384s31.507692 55.138462 63.015385 55.138462h275.692308c228.430769 0 496.246154 0 496.246154-378.092308s-267.815385-370.215385-496.246154-370.215385zM47.261538 514.914462l259.938462-196.923077c39.384615-23.630769 86.646154-15.753846 110.276923 15.753846 7.876923 15.753846 15.753846 31.507692 15.753846 47.261538v393.846154c0 47.261538-31.507692 78.769231-78.769231 78.769231-15.753846 0-31.507692-7.876923-47.261538-15.753846l-259.938462-196.923077c-39.384615-31.507692-47.261538-78.769231-15.753846-110.276923 0-7.876923 7.876923-15.753846 15.753846-15.753846z" horiz-adv-x="1102" />
|
||||
|
||||
|
||||
<glyph glyph-name="tongji1" unicode="" d="M702.171429 52.419048c-78.019048 0-141.409524 63.390476-141.409524 141.409523V754.590476c0 78.019048 63.390476 141.409524 141.409524 141.409524 78.019048 0 141.409524-63.390476 141.409523-141.409524v-565.638095c-4.87619-73.142857-68.266667-136.533333-141.409523-136.533333z m0 746.057142c-24.380952 0-43.885714-19.504762-43.885715-43.885714v-565.638095c0-24.380952 19.504762-43.885714 43.885715-43.885714s43.885714 19.504762 43.885714 43.885714V754.590476c-4.87619 24.380952-24.380952 43.885714-43.885714 43.885714zM1067.885714 52.419048c-78.019048 0-141.409524 63.390476-141.409524 141.409523V447.390476c0 78.019048 63.390476 141.409524 141.409524 141.409524s141.409524-63.390476 141.409524-141.409524v-253.561905c0-78.019048-63.390476-141.409524-141.409524-141.409523z m0 433.980952c-24.380952 0-43.885714-19.504762-43.885714-43.885714v-253.561905c0-24.380952 19.504762-43.885714 43.885714-43.885714s43.885714 19.504762 43.885715 43.885714V447.390476c0 19.504762-19.504762 39.009524-43.885715 39.009524zM331.580952 52.419048C253.561905 52.419048 195.047619 115.809524 195.047619 193.828571V447.390476c0 78.019048 63.390476 141.409524 141.409524 141.409524 78.019048 0 141.409524-63.390476 141.409524-141.409524v-253.561905c-4.87619-78.019048-68.266667-141.409524-146.285715-141.409523z m0 433.980952c-19.504762 0-39.009524-19.504762-39.009523-39.009524v-253.561905c0-24.380952 19.504762-43.885714 43.885714-43.885714s43.885714 19.504762 43.885714 43.885714V447.390476c-4.87619 19.504762-24.380952 39.009524-48.761905 39.009524zM1297.066667-108.495238H48.761905c-29.257143 0-48.761905 19.504762-48.761905 48.761905v536.380952c0 29.257143 19.504762 48.761905 48.761905 48.761905s48.761905-19.504762 48.761905-48.761905v-487.619048h1199.542857c29.257143 0 48.761905-19.504762 48.761904-48.761904s-24.380952-48.761905-48.761904-48.761905z" horiz-adv-x="1365" />
|
||||
|
||||
|
||||
<glyph glyph-name="qiandao-1" unicode="" d="M881.509434-128h-724.528302a157.584906 157.584906 0 0 0-156.981132 156.981132v603.773585a157.584906 157.584906 0 0 0 156.981132 156.981132h724.528302a157.584906 157.584906 0 0 0 156.981132-156.981132v-603.773585a157.584906 157.584906 0 0 0-156.981132-156.981132z m-724.528302 845.283019a84.528302 84.528302 0 0 1-84.528302-84.528302v-603.773585a84.528302 84.528302 0 0 1 84.528302-84.528302h724.528302a84.528302 84.528302 0 0 1 84.528302 84.528302v603.773585a84.528302 84.528302 0 0 1-84.528302 84.528302zM277.735849 859.773585v-241.509434M277.735849 582.037736a36.226415 36.226415 0 0 0-36.226415 36.226415v241.509434a36.226415 36.226415 0 1 0 72.45283 0v-241.509434a36.226415 36.226415 0 0 0-36.226415-36.226415zM760.754717 859.773585v-241.509434M760.754717 582.037736a36.226415 36.226415 0 0 0-36.226415 36.226415v241.509434a36.226415 36.226415 0 0 0 72.45283 0v-241.509434a36.226415 36.226415 0 0 0-36.226415-36.226415zM486.641509 149.735849a37.433962 37.433962 0 0 0-27.773584 10.867925l-175.09434 181.132075a36.226415 36.226415 0 0 0 0 51.320755 36.830189 36.830189 0 0 0 51.320755 0l152.754717-158.792453 281.962264 221.584906a36.226415 36.226415 0 0 0 50.716981-6.037736 36.830189 36.830189 0 0 0-6.037736-51.320755l-307.320755-241.509434a38.037736 38.037736 0 0 0-20.528302-7.245283z" horiz-adv-x="1038" />
|
||||
|
||||
|
||||
<glyph glyph-name="xiajiantou2" unicode="" d="M796.390468-127.928326a113.768929 113.768929 0 0 0-86.464386 39.819126l-682.613575 796.382503A113.768929 113.768929 0 1 0 200.24128 856.172911L796.390468 156.493997 1392.539656 851.622154a113.768929 113.768929 0 0 0 172.928773-147.899608l-682.613575-796.382504A113.768929 113.768929 0 0 0 796.390468-127.928326z" horiz-adv-x="1592" />
|
||||
|
||||
|
||||
<glyph glyph-name="qiandao-" unicode="" d="M881.509434-128h-724.528302a157.584906 157.584906 0 0 0-156.981132 156.981132v603.773585a157.584906 157.584906 0 0 0 156.981132 156.981132h724.528302a157.584906 157.584906 0 0 0 156.981132-156.981132v-603.773585a157.584906 157.584906 0 0 0-156.981132-156.981132z m-724.528302 845.283019a84.528302 84.528302 0 0 1-84.528302-84.528302v-603.773585a84.528302 84.528302 0 0 1 84.528302-84.528302h724.528302a84.528302 84.528302 0 0 1 84.528302 84.528302v603.773585a84.528302 84.528302 0 0 1-84.528302 84.528302zM277.735849 859.773585v-241.509434M277.735849 582.037736a36.226415 36.226415 0 0 0-36.226415 36.226415v241.509434a36.226415 36.226415 0 1 0 72.45283 0v-241.509434a36.226415 36.226415 0 0 0-36.226415-36.226415zM760.754717 859.773585v-241.509434M760.754717 582.037736a36.226415 36.226415 0 0 0-36.226415 36.226415v241.509434a36.226415 36.226415 0 0 0 72.45283 0v-241.509434a36.226415 36.226415 0 0 0-36.226415-36.226415zM486.641509 149.73584900000003a37.433962 37.433962 0 0 0-27.773584 10.867925l-175.09434 181.132075a36.226415 36.226415 0 0 0 0 51.320755 36.830189 36.830189 0 0 0 51.320755 0l152.754717-158.792453 281.962264 221.584906a36.226415 36.226415 0 0 0 50.716981-6.037736 36.830189 36.830189 0 0 0-6.037736-51.320755l-307.320755-241.509434a38.037736 38.037736 0 0 0-20.528302-7.245283z" horiz-adv-x="1038" />
|
||||
|
||||
|
||||
<glyph glyph-name="yidong" unicode="" d="M855.341176-121.976471H174.682353c-90.352941 0-156.611765 72.282353-156.611765 156.611765V721.317647C18.070588 811.670588 90.352941 877.929412 174.682353 877.929412h680.658823c90.352941 0 156.611765-72.282353 156.611765-156.611765v-78.305882h-90.352941V721.317647c0 36.141176-30.117647 66.258824-66.258824 66.258824H174.682353c-36.141176 0-66.258824-30.117647-66.258824-66.258824v-680.658823c0-36.141176 30.117647-66.258824 66.258824-66.258824h680.658823c36.141176 0 66.258824 30.117647 66.258824 66.258824v78.305882h90.352941v-78.305882c6.023529-90.352941-66.258824-162.635294-156.611765-162.635295zM951.717647 299.670588H271.058824c-24.094118 0-48.188235 18.070588-48.188236 48.188236s18.070588 48.188235 48.188236 48.188235h680.658823c24.094118 0 48.188235-18.070588 48.188235-48.188235s-24.094118-48.188235-48.188235-48.188236zM1084.235294 347.858824L921.6 173.176471V534.588235L1084.235294 359.905882v-12.047058z" horiz-adv-x="1084" />
|
||||
|
||||
|
||||
<glyph glyph-name="xiayi1" unicode="" d="M512 384m-481.882353 0a481.882353 481.882353 0 1 1 963.764706 0 481.882353 481.882353 0 1 1-963.764706 0ZM512-128C228.894118-128 0 100.894118 0 384S228.894118 896 512 896 1024 667.105882 1024 384 795.105882-128 512-128z m0 963.764706C265.035294 835.764706 60.235294 630.964706 60.235294 384S265.035294-67.764706 512-67.764706 963.764706 137.035294 963.764706 384 758.964706 835.764706 512 835.764706zM502.964706 143.058824c-18.070588 0-30.117647 12.047059-30.117647 30.117647V588.8c0 18.070588 12.047059 30.117647 30.117647 30.117647s30.117647-12.047059 30.117647-30.117647V173.176471c0-18.070588-12.047059-30.117647-30.117647-30.117647zM502.964706 88.847059c-6.023529 0-12.047059 0-18.070588 6.023529l-144.564706 132.517647c-12.047059 12.047059-12.047059 30.117647 0 42.164706 12.047059 12.047059 30.117647 12.047059 42.164706 0l126.494117-108.423529 132.517647 108.423529c12.047059 12.047059 30.117647 12.047059 42.164706-6.023529 6.023529-6.023529 6.023529-30.117647-12.047059-36.141177l-150.588235-132.517647c-6.023529 0-12.047059-6.023529-18.070588-6.023529z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="shangyi1" unicode="" d="M512 384m-481.882353 0a481.882353 481.882353 0 1 1 963.764706 0 481.882353 481.882353 0 1 1-963.764706 0ZM512-128C228.894118-128 0 100.894118 0 384S228.894118 896 512 896 1024 667.105882 1024 384 795.105882-128 512-128z m0 963.764706C265.035294 835.764706 60.235294 630.964706 60.235294 384S265.035294-67.764706 512-67.764706 963.764706 137.035294 963.764706 384 758.964706 835.764706 512 835.764706zM502.964706 106.917647c-18.070588 0-30.117647 12.047059-30.117647 30.117647V552.658824c0 18.070588 12.047059 30.117647 30.117647 30.117647s30.117647-12.047059 30.117647-30.117647v-415.62353c0-18.070588-12.047059-30.117647-30.117647-30.117647zM653.552941 444.235294c-6.023529 0-12.047059 0-18.070588 6.02353l-132.517647 114.447058-126.494118-108.423529c-12.047059-12.047059-30.117647-12.047059-42.164706 0-12.047059 12.047059-12.047059 30.117647 0 42.164706l144.564706 126.494117c12.047059 12.047059 30.117647 12.047059 42.164706 0l150.588235-126.494117c12.047059-12.047059 12.047059-30.117647 6.02353-42.164706-6.023529-6.023529-12.047059-12.047059-24.094118-12.047059z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="xiayi" unicode="" d="M512 384m-481.882353 0a481.882353 481.882353 0 1 1 963.764706 0 481.882353 481.882353 0 1 1-963.764706 0ZM512-128C228.894118-128 0 100.894118 0 384S228.894118 896 512 896 1024 667.105882 1024 384 795.105882-128 512-128z m0 963.764706C265.035294 835.764706 60.235294 630.964706 60.235294 384S265.035294-67.764706 512-67.764706 963.764706 137.035294 963.764706 384 758.964706 835.764706 512 835.764706zM502.964706 143.058824c-18.070588 0-30.117647 12.047059-30.117647 30.117647V588.8c0 18.070588 12.047059 30.117647 30.117647 30.117647s30.117647-12.047059 30.117647-30.117647V173.176471c0-18.070588-12.047059-30.117647-30.117647-30.117647zM502.964706 88.847059c-6.023529 0-12.047059 0-18.070588 6.023529l-144.564706 132.517647c-12.047059 12.047059-12.047059 30.117647 0 42.164706 12.047059 12.047059 30.117647 12.047059 42.164706 0l126.494117-108.423529 132.517647 108.423529c12.047059 12.047059 30.117647 12.047059 42.164706-6.023529 6.023529-6.023529 6.023529-30.117647-12.047059-36.141177l-150.588235-132.517647c-6.023529 0-12.047059-6.023529-18.070588-6.023529z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="shangyi" unicode="" d="M512 384m-481.882353 0a481.882353 481.882353 0 1 1 963.764706 0 481.882353 481.882353 0 1 1-963.764706 0ZM512-128C228.894118-128 0 100.894118 0 384S228.894118 896 512 896 1024 667.105882 1024 384 795.105882-128 512-128z m0 963.764706C265.035294 835.764706 60.235294 630.964706 60.235294 384S265.035294-67.764706 512-67.764706 963.764706 137.035294 963.764706 384 758.964706 835.764706 512 835.764706zM502.964706 106.917647c-18.070588 0-30.117647 12.047059-30.117647 30.117647V552.658824c0 18.070588 12.047059 30.117647 30.117647 30.117647s30.117647-12.047059 30.117647-30.117647v-415.62353c0-18.070588-12.047059-30.117647-30.117647-30.117647zM653.552941 444.235294c-6.023529 0-12.047059 0-18.070588 6.02353l-132.517647 114.447058-126.494118-108.423529c-12.047059-12.047059-30.117647-12.047059-42.164706 0-12.047059 12.047059-12.047059 30.117647 0 42.164706l144.564706 126.494117c12.047059 12.047059 30.117647 12.047059 42.164706 0l150.588235-126.494117c12.047059-12.047059 12.047059-30.117647 6.02353-42.164706-6.023529-6.023529-12.047059-12.047059-24.094118-12.047059z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="bianji5" unicode="" d="M704.752941-97.882353H198.776471c-78.305882 0-138.541176 60.235294-138.541177 132.517647V667.105882c0 72.282353 66.258824 132.517647 138.541177 132.517647h319.247058c18.070588 0 30.117647-12.047059 30.117647-30.117647s-12.047059-24.094118-30.117647-24.094117H198.776471c-42.164706 0-78.305882-36.141176-78.305883-72.282353v-632.470588c0-42.164706 36.141176-72.282353 78.305883-72.282353h499.952941c42.164706 0 78.305882 36.141176 78.305882 72.282353V293.647059c0 18.070588 12.047059 30.117647 30.117647 30.117647s30.117647-12.047059 30.117647-30.117647v-259.011765c6.023529-72.282353-60.235294-132.517647-132.517647-132.517647zM313.223529 161.129412c-24.094118 0-54.211765 18.070588-60.235294 48.188235v30.117647l36.141177 126.494118 445.741176 445.741176c48.188235 48.188235 120.470588 48.188235 168.658824 0 48.188235-48.188235 48.188235-120.470588 0-168.658823l-445.741177-445.741177-126.494117-30.117647c-6.023529-6.023529-12.047059-6.023529-18.070589-6.023529z m36.141177 174.682353l-36.141177-114.447059 120.470589 30.117647 433.694117 433.694118c12.047059 12.047059 18.070588 24.094118 18.070589 42.164705 0 18.070588-6.023529 30.117647-18.070589 42.164706-24.094118 24.094118-60.235294 24.094118-84.329411 0L349.364706 335.811765z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="shanchu3" unicode="" d="M654.222222-99.555556H375.466667c-68.266667 0-125.155556 56.888889-136.533334 142.222223L142.222222 571.733333c0 17.066667 5.688889 28.444444 22.755556 34.133334 17.066667 0 28.444444-5.688889 34.133333-22.755556l91.022222-534.755555c11.377778-51.2 45.511111-91.022222 85.333334-91.022223h278.755555c39.822222 0 73.955556 39.822222 85.333334 91.022223l91.022222 534.755555c0 17.066667 17.066667 28.444444 34.133333 22.755556 17.066667 0 28.444444-17.066667 22.755556-34.133334L796.444444 42.666667c-17.066667-85.333333-73.955556-142.222222-142.222222-142.222223zM597.333333 708.266667v5.688889c0 51.2-39.822222 96.711111-85.333333 96.711111s-85.333333-45.511111-85.333333-102.4h-56.888889C369.777778 793.6 432.355556 867.555556 512 867.555556c73.955556 0 136.533333-68.266667 142.222222-147.911112v-5.688888l-56.888889-5.688889zM398.222222 36.977778c-11.377778 0-28.444444 11.377778-28.444444 22.755555L284.444444 577.422222c0 17.066667 11.377778 34.133333 22.755556 34.133334 17.066667 5.688889 34.133333-5.688889 34.133333-22.755556l85.333334-517.688889c0-17.066667-5.688889-34.133333-28.444445-34.133333 5.688889 0 0 0 0 0zM625.777778 36.977778s-5.688889 0 0 0c-22.755556 5.688889-28.444444 17.066667-28.444445 34.133333L682.666667 588.8c0 17.066667 17.066667 28.444444 34.133333 22.755556 11.377778 0 22.755556-17.066667 22.755556-34.133334l-85.333334-517.688889c0-11.377778-17.066667-22.755556-28.444444-22.755555zM512 36.977778c-17.066667 0-28.444444 11.377778-28.444444 28.444444V583.111111c0 17.066667 11.377778 28.444444 28.444444 28.444445s28.444444-11.377778 28.444444-28.444445v-517.688889c0-17.066667-11.377778-28.444444-28.444444-28.444444zM938.666667 645.688889H85.333333c-17.066667 0-28.444444 17.066667-28.444444 28.444444s11.377778 28.444444 28.444444 28.444445h853.333334c17.066667 0 28.444444-11.377778 28.444444-28.444445s-11.377778-28.444444-28.444444-28.444444z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="xuanze" unicode="" d="M870.4 896H153.6C66.56 896 0 829.44 0 742.4v-716.8c0-87.04 66.56-153.6 153.6-153.6h716.8c87.04 0 153.6 66.56 153.6 153.6V742.4c0 87.04-66.56 153.6-153.6 153.6z m-40.96-394.24l-337.92-358.4c-10.24-10.24-25.6-15.36-40.96-15.36-10.24 0-20.48 5.12-30.72 10.24L174.08 332.8c-20.48 15.36-25.6 51.2-10.24 71.68 15.36 20.48 51.2 25.6 71.68 10.24l209.92-163.84 307.2 327.68c20.48 20.48 51.2 20.48 71.68 0 20.48-20.48 25.6-56.32 5.12-76.8z" horiz-adv-x="1024" />
|
||||
|
||||
|
||||
<glyph glyph-name="bianji4" unicode="" d="M934.724189 617.173271L834.414864 516.863946 653.380212 697.898598l100.394659 100.351991A42.257063 42.257063 0 0 0 783.769535 810.666588c6.527999 0 19.157332-1.621333 29.951997-12.415999l121.002657-121.002656a42.538663 42.538663 0 0 0 0-60.074662zM299.374908-18.176009l-200.661316-19.626665 19.669331 200.661316L593.049551 637.52527 774.084202 456.533285l-474.709294-474.709294z m695.679942 755.79727L874.09486 858.581251A127.317323 127.317323 0 0 1 783.769535 895.999915c-32.725331 0-65.407995-12.458666-90.367993-37.418664l-646.229279-646.229279c-7.082666-7.082666-11.434666-16.469332-12.287999-26.495998l-26.197331-267.818645c-2.133333-25.002665 17.706665-46.037329 42.239996-46.037329 1.194667 0 2.432 0.042667 3.626666 0.128l267.818645 26.239998a42.12053 42.12053 0 0 1 26.495998 12.287999l646.186612 646.186613c49.919996 49.919996 49.919996 130.858656 0 180.778651z" horiz-adv-x="1032" />
|
||||
|
||||
|
Before Width: | Height: | Size: 394 KiB After Width: | Height: | Size: 438 KiB |
|
@ -0,0 +1,166 @@
|
|||
.CodeMirror-merge {
|
||||
position: relative;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
.CodeMirror-merge,
|
||||
.CodeMirror-merge .CodeMirror {
|
||||
min-height: 50px;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-2pane .CodeMirror-merge-pane {
|
||||
width: 48%;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-2pane .CodeMirror-merge-gap {
|
||||
width: 4%;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-3pane .CodeMirror-merge-pane {
|
||||
width: 31%;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-3pane .CodeMirror-merge-gap {
|
||||
width: 3.5%;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-pane {
|
||||
display: inline-block;
|
||||
white-space: normal;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-pane-rightmost {
|
||||
position: absolute;
|
||||
right: 0px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-gap {
|
||||
z-index: 2;
|
||||
display: inline-block;
|
||||
height: 100%;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
background: #515151;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-scrolllock-wrap {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
left: 50%;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-scrolllock {
|
||||
position: relative;
|
||||
left: -50%;
|
||||
cursor: pointer;
|
||||
color: #d8d8d8;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copybuttons-left,
|
||||
.CodeMirror-merge-copybuttons-right {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copy {
|
||||
position: absolute;
|
||||
cursor: pointer;
|
||||
color: #ce374b;
|
||||
z-index: 3;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copy-reverse {
|
||||
position: absolute;
|
||||
cursor: pointer;
|
||||
color: #44c;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copybuttons-left .CodeMirror-merge-copy {
|
||||
left: 2px;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-copybuttons-right .CodeMirror-merge-copy {
|
||||
right: 2px;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-r-inserted,
|
||||
.CodeMirror-merge-l-inserted {
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAYAAACddGYaAAAAGUlEQVQI12MwuCXy3+CWyH8GBgYGJgYkAABZbAQ9ELXurwAAAABJRU5ErkJggg==);
|
||||
background-position: bottom left;
|
||||
background-repeat: repeat-x;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-r-deleted,
|
||||
.CodeMirror-merge-l-deleted {
|
||||
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAYAAACddGYaAAAAGUlEQVQI12M4Kyb2/6yY2H8GBgYGJgYkAABURgPz6Ks7wQAAAABJRU5ErkJggg==);
|
||||
background-position: bottom left;
|
||||
background-repeat: repeat-x;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-r-chunk {
|
||||
background: #9a6868;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-r-connect {
|
||||
fill: #9a6868;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-chunk {
|
||||
background: #eef;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-chunk-start {
|
||||
border-top: 1px solid #88e;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-chunk-end {
|
||||
border-bottom: 1px solid #88e;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-connect {
|
||||
fill: #eef;
|
||||
stroke: #88e;
|
||||
stroke-width: 1px;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-chunk.CodeMirror-merge-r-chunk {
|
||||
background: #dfd;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-chunk-start.CodeMirror-merge-r-chunk-start {
|
||||
border-top: 1px solid #4e4;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-l-chunk-end.CodeMirror-merge-r-chunk-end {
|
||||
border-bottom: 1px solid #4e4;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-collapsed-widget:before {
|
||||
content: "(...)";
|
||||
}
|
||||
|
||||
.CodeMirror-merge-collapsed-widget {
|
||||
cursor: pointer;
|
||||
color: #88b;
|
||||
background: #eef;
|
||||
border: 1px solid #ddf;
|
||||
font-size: 90%;
|
||||
padding: 0 3px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.CodeMirror-merge-collapsed-line .CodeMirror-gutter-elt {
|
||||
display: none;
|
||||
}
|
||||
.color-grey {
|
||||
color: #888 !important;
|
||||
}
|
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 434 KiB After Width: | Height: | Size: 434 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 154 KiB After Width: | Height: | Size: 154 KiB |
|
@ -0,0 +1,53 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
|
||||
<meta charset="utf-8">
|
||||
<meta name=”Keywords” Content=”EduCoder,信息技术实践教学,精品课程网,慕课MOOC″>
|
||||
<meta name=”Keywords” Content=”实践课程,项目实战,java实训,python实战,人工智能技术,后端开发学习,移动开发入门″>
|
||||
<meta name=”Keywords” Content=”翻转课堂,高效课堂创建,教学模式″>
|
||||
<meta name=”Keywords” Content=”实训项目,python教程,C语言入门,java书,php后端开发,app前端开发,数据库技术″>
|
||||
<meta name=”Keywords” Content=”在线竞赛,计算机应用大赛,编程大赛,大学生计算机设计大赛,全国高校绿色计算机大赛″>
|
||||
<meta name=”Description”
|
||||
Content=”EduCoder是信息技术类实践教学平台。EduCoder涵盖了计算机、大数据、云计算、人工智能、软件工程、物联网等专业课程。超10000个实训案例及22000个技能评测点,建立学、练、评、测一体化实验环境。”>
|
||||
<meta name=”Description”
|
||||
Content=”EduCoder实践课程,旨在于通过企业级实战实训案例,帮助众多程序员提升各项业务能力。解决学生、学员、企业员工等程序设计能力、算法设计能力、问题求解能力、应用开发能力、系统运维能力等。”>
|
||||
<meta name=”Description”
|
||||
Content=”EduCoder翻转课堂教学模式,颠覆了传统教学模式,让教师与学生的关系由“权威”变成了“伙伴”。将学习的主动权转交给学生,使学生可个性化化学,学生的学习主体得到了彰显。”>
|
||||
<meta name=”Description” Content=”EduCoder实训项目为单个知识点关卡实践训练,帮助学生巩固单一弱点,强化学习。 ”>
|
||||
<meta name=”Description” Content=”EduCoder实践教学平台,各类大赛为进一步提高各类学生综合运用高级语言程序设计能力,培养创新意识和实践探索精神,发掘优秀软件人才。 ”>
|
||||
<meta name="theme-color" content="#000000">
|
||||
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
|
||||
|
||||
<script type="text/javascript">
|
||||
window.__isR = true;
|
||||
if (
|
||||
(navigator.userAgent.indexOf('MSIE 9') != -1
|
||||
|| navigator.userAgent.indexOf('MSIE 10') != -1)
|
||||
&&
|
||||
location.pathname.indexOf("/compatibility") == -1) {
|
||||
location.href = '/compatibility.html'
|
||||
}
|
||||
</script>
|
||||
|
||||
<link rel=" stylesheet" type="text/css" href="%PUBLIC_URL%css/iconfont.css">
|
||||
<link rel=" stylesheet" type="text/css" href="%PUBLIC_URL%css/edu-purge.css">
|
||||
<link rel="stylesheet" type="text/css" href="%PUBLIC_URL%css/editormd.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="%PUBLIC_URL%css/merge.css">
|
||||
<%= htmlWebpackPlugin.tags.headTags %>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--用于markdown转html -->
|
||||
<div id="md_div" style="display: none;"></div>
|
||||
<div id="root" class="page -layout-v -fit widthunit"></div>
|
||||
<div id="picture_display" style="display: none;"></div>
|
||||
<script src="%PUBLIC_URL%js/js_min_all.js"></script>
|
||||
<script src="%PUBLIC_URL%js/codemirror/codemirror.js"></script>
|
||||
<script src="%PUBLIC_URL%js/editormd/editormd.min.js"></script>
|
||||
<script src="%PUBLIC_URL%js/codemirror/merge/merge.js"></script>
|
||||
<%= htmlWebpackPlugin.tags.bodyTags %>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -11267,7 +11267,7 @@ Copyright © 2018 Basecamp, LLC
|
|||
type: "GET",
|
||||
dataType: "script",
|
||||
cache: true,
|
||||
async: false,
|
||||
async: true,
|
||||
global: false,
|
||||
|
||||
// Only evaluate the response if it is successful (gh-4126)
|
|
@ -0,0 +1,427 @@
|
|||
//需求:表情栏可以隐藏显示,高度只要一点高
|
||||
function sd_create_editor(params) {
|
||||
// var minHeight; //最小高度
|
||||
var paramsHeight = params.height; //设定的高度
|
||||
var id = arguments[1] ? arguments[1] : undefined;
|
||||
var type = arguments[2] ? arguments[2] : '';
|
||||
var paramsWidth = params.width == undefined ? "100%" : params.width;
|
||||
|
||||
var editor = params.kindutil.create(params.textarea, {
|
||||
resizeType: 1, minWidth: "1px", width: "94%",
|
||||
height: "33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
minHeight: "33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
width: params.width,
|
||||
/*
|
||||
items:['emoticons','fontname',
|
||||
'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist','insertunorderedlist', '|',
|
||||
'formatblock', 'fontsize', '|','indent', 'outdent',
|
||||
'|','imagedirectupload','more'],*/
|
||||
items: ['code', 'emoticons', 'fontname',
|
||||
'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist', 'insertunorderedlist', '|',
|
||||
'formatblock', 'fontsize', '|', 'indent', 'outdent',
|
||||
'|', 'imagedirectupload', 'table', 'media', 'preview', "more"
|
||||
],
|
||||
afterChange: function () {//按键事件
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe.height(paramsHeight);
|
||||
this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : (params.kindutil.GECKO ? body.offsetHeight + 26 : body.offsetHeight + 7)), paramsHeight));
|
||||
},
|
||||
afterBlur: function () {
|
||||
//params.toolbar_container.hide();
|
||||
params.textarea.blur();
|
||||
sd_check_editor_form_field({ content: this, contentmsg: params.contentmsg, textarea: params.textarea });
|
||||
if (this.isEmpty()) {
|
||||
this.edit.html("<span id='hint' style='color:#999999;font-size:12px;'>我要回复</span>");
|
||||
}
|
||||
//params.toolbar_container.hide();
|
||||
$('#reply_image_' + id).addClass('imageFuzzy');
|
||||
if (/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(this.edit.html())) {
|
||||
params.submit_btn.hide();
|
||||
params.toolbar_container.hide();
|
||||
this.resize("100%", null);
|
||||
} else if (this.edit.html().trim() != "") {
|
||||
params.submit_btn.show();
|
||||
params.toolbar_container.show();
|
||||
}
|
||||
|
||||
//params.submit_btn.css("display","none");
|
||||
|
||||
},
|
||||
afterFocus: function () {
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
if (/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(edit.html())) {
|
||||
edit.html('');
|
||||
}
|
||||
params.submit_btn.show();
|
||||
params.contentmsg.hide();
|
||||
params.toolbar_container.show();
|
||||
// params.toolbar_container.show();
|
||||
$('#reply_image_' + id).removeClass('imageFuzzy');
|
||||
//edit.iframe.width(paramsWidth);
|
||||
|
||||
this.resize("100%", null);
|
||||
this.resize(paramsWidth, null);
|
||||
//params.submit_btn.show();
|
||||
|
||||
},
|
||||
|
||||
afterCreate: function () {
|
||||
//params.submit_btn.hide();
|
||||
var toolbar = $("div[class='ke-toolbar']", params.div_form);
|
||||
toolbar.css('display', 'inline');
|
||||
toolbar.css('padding', 0);
|
||||
$(".ke-outline>.ke-toolbar-icon", toolbar).append('表情');
|
||||
params.toolbar_container.append(toolbar);
|
||||
params.toolbar_container.hide();
|
||||
params.submit_btn.hide();
|
||||
//init
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe[0].scroll = 'no';
|
||||
body.style.overflowY = 'hidden';
|
||||
//reset height
|
||||
paramsHeight = paramsHeight == undefined ? params.kindutil.removeUnit(this.height) : paramsHeight;
|
||||
edit.iframe.height(paramsHeight);
|
||||
edit.html("<span id='hint' style='color:#999999;font-size:12px;'>我要回复</span>");
|
||||
this.resize(null, paramsHeight);// Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight)+ paramsHeight , paramsHeight)
|
||||
// params.toolbar_container.hide();
|
||||
if (typeof enableAt === 'function') {
|
||||
enableAt(this, id, type);
|
||||
}
|
||||
}
|
||||
}).loadPlugin('paste');
|
||||
return editor;
|
||||
}
|
||||
|
||||
function sd_create_shixun_editor(params) {
|
||||
// var minHeight; //最小高度
|
||||
var paramsHeight = params.height; //设定的高度
|
||||
var id = arguments[1] ? arguments[1] : undefined;
|
||||
var type = arguments[2] ? arguments[2] : '';
|
||||
var paramsWidth = params.width == undefined ? "100%" : params.width;
|
||||
|
||||
var editor = params.kindutil.create(params.textarea, {
|
||||
resizeType: 1, minWidth: "1px", width: "94%",
|
||||
height: "33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
minHeight: "33px",// == undefined ? "30px":paramsHeight+"px",
|
||||
width: params.width,
|
||||
/*
|
||||
items:['emoticons','fontname',
|
||||
'forecolor', 'hilitecolor', 'bold', '|', 'justifyleft', 'justifycenter', 'insertorderedlist','insertunorderedlist', '|',
|
||||
'formatblock', 'fontsize', '|','indent', 'outdent',
|
||||
'|','imagedirectupload','more'],*/
|
||||
items: ['imagedirectupload'],
|
||||
afterChange: function () {//按键事件
|
||||
if (this.isEmpty() || this.edit.doc.body.innerText == '说点什么') {
|
||||
$('#mini_comment_section').height('auto')
|
||||
} else {
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
var newHeight = 0;
|
||||
|
||||
var FF = !(window.mozInnerScreenX == null);
|
||||
if (FF) { // 火狐下处理方式不一样
|
||||
newHeight = $(body).height()
|
||||
} else {
|
||||
$(body).children().each(function () { newHeight += $(this).height() });
|
||||
}
|
||||
// var newHeight = $(body).height()
|
||||
|
||||
var maxHeight = 357 // $(window).height() - 150 - 57; // 150 上部距离 57 下部距离
|
||||
|
||||
newHeight = newHeight <= maxHeight ? newHeight : maxHeight
|
||||
|
||||
|
||||
if (newHeight > 150) {
|
||||
if (FF) { // 火狐下处理方式不一样
|
||||
this.resize("100%", (newHeight + 20) + 'px');
|
||||
} else {
|
||||
this.resize("100%", newHeight + 'px');
|
||||
}
|
||||
$('#mini_comment_section').height(newHeight + 57)
|
||||
} else {
|
||||
this.resize("100%", '150px');
|
||||
$('#mini_comment_section').height('auto')
|
||||
}
|
||||
}
|
||||
|
||||
//edit.iframe.height(paramsHeight);
|
||||
//this.resize(null, Math.max((params.kindutil.IE ? body.scrollHeight : (params.kindutil.GECKO ? body.offsetHeight+26:body.offsetHeight+7)) , 15));
|
||||
},
|
||||
afterBlur: function () {
|
||||
//params.toolbar_container.hide();
|
||||
params.textarea.blur();
|
||||
sd_check_editor_form_field({ content: this, contentmsg: params.contentmsg, textarea: params.textarea });
|
||||
if (this.isEmpty()) {
|
||||
$('#mini_comment_section').height('auto')
|
||||
this.edit.html("<span id='hint' style='color:#999999;font-size:14px;'>说点什么</span>");
|
||||
params.submit_btn.hide();
|
||||
params.toolbar_container.hide();
|
||||
this.resize("100%", "30px");
|
||||
$("#dis_reply_id").val("");
|
||||
if ($("#editor_panel").length > 0) {
|
||||
$("#editor_panel").attr("style", "margin-top:9px;flex: 1;");
|
||||
$("#editor_panel").parents("form").addClass("df")
|
||||
}
|
||||
}
|
||||
//params.toolbar_container.hide();
|
||||
/*$('#reply_image_' + id).addClass('imageFuzzy');
|
||||
if(/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(this.edit.html())){
|
||||
params.submit_btn.hide();
|
||||
params.toolbar_container.hide();
|
||||
this.resize("100%", "30px");
|
||||
}else if(this.edit.html().trim() != ""){
|
||||
params.submit_btn.show();
|
||||
params.toolbar_container.show();
|
||||
}*/
|
||||
//params.submit_btn.css("display","none");
|
||||
|
||||
// $('#mini_comment_section').height('auto')
|
||||
},
|
||||
afterFocus: function () {
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
if (/^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(edit.html())) {
|
||||
edit.html("");
|
||||
}
|
||||
params.submit_btn.show();
|
||||
params.contentmsg.hide();
|
||||
params.toolbar_container.show();
|
||||
// params.toolbar_container.show();
|
||||
$('#reply_image_' + id).removeClass('imageFuzzy');
|
||||
//edit.iframe.width(paramsWidth);
|
||||
|
||||
var newHeight = $(body).height()
|
||||
if (newHeight < 150) {
|
||||
this.resize("100%", "150px");
|
||||
this.resize(paramsWidth, "150px");
|
||||
}
|
||||
if ($("#editor_panel").length > 0) {
|
||||
$("#editor_panel").attr("style", "width:100%;margin-top:9px;");
|
||||
$("#editor_panel").parents("form").removeClass("df")
|
||||
}
|
||||
//params.submit_btn.show();
|
||||
|
||||
// $('#mini_comment_section').height('244px')
|
||||
},
|
||||
|
||||
afterCreate: function () {
|
||||
//params.submit_btn.hide();
|
||||
var toolbar = $("div[class='ke-toolbar']", params.div_form);
|
||||
toolbar.css('display', 'inline');
|
||||
toolbar.css('padding', 0);
|
||||
$(".ke-outline>.ke-toolbar-icon", toolbar).append('表情');
|
||||
params.toolbar_container.append(toolbar);
|
||||
params.toolbar_container.hide();
|
||||
params.submit_btn.hide();
|
||||
//init
|
||||
var edit = this.edit;
|
||||
var body = edit.doc.body;
|
||||
edit.iframe[0].scroll = 'no';
|
||||
// body.style.overflowY = 'hidden';
|
||||
body.style['padding-top'] = '2px';
|
||||
body.style['padding-left'] = '5px';
|
||||
// <style type='text/css'>body{padding-top: 2px;padding-left: 5px;}</style>
|
||||
//reset height
|
||||
paramsHeight = paramsHeight == undefined ? params.kindutil.removeUnit(this.height) : paramsHeight;
|
||||
edit.iframe.height(paramsHeight);
|
||||
edit.html("<span id='hint' style='color:#999999;font-size:14px;'>说点什么</span>");
|
||||
this.resize(null, paramsHeight);// Math.max((params.kindutil.IE ? body.scrollHeight : body.offsetHeight)+ paramsHeight , paramsHeight)
|
||||
// params.toolbar_container.hide();
|
||||
if (typeof enableAt === 'function') {
|
||||
enableAt(this, id, type);
|
||||
}
|
||||
|
||||
var iframe = edit.iframe[0]
|
||||
$(iframe.contentDocument.head).append(
|
||||
$("<style type='text/css'>::-webkit-scrollbar{height: 10px;width: 6px !important;background: rgba(0,0,0,.1) !important;} ::-webkit-scrollbar-thumb {border-radius: 6px;background: #ADADAD;};</style>"));
|
||||
}
|
||||
}).loadPlugin('paste');
|
||||
return editor;
|
||||
}
|
||||
|
||||
function sd_check_editor_form_field(params) {
|
||||
var result = true;
|
||||
if (params.content != undefined) {
|
||||
if (params.content.isEmpty()) {
|
||||
result = false;
|
||||
}
|
||||
if (params.content.html() != params.textarea.html() || params.issubmit == true) {
|
||||
params.textarea.html(params.content.html());
|
||||
params.content.sync();
|
||||
if (params.content.isEmpty() || /^\s*<\w*\s*\w*\=\"\w*\"\s*\w*\=\"\w*\:\s*\#\d*\;\s*\w*\-\w*\:\s*\w*\;\"\>[\u4e00-\u9fa5]*<\/\w*\>\s*$/.test(params.textarea.html())) {
|
||||
params.contentmsg.html('内容不能为空');
|
||||
params.contentmsg.css({ color: '#ff0000' });
|
||||
} else {
|
||||
params.contentmsg.html('填写正确');
|
||||
params.contentmsg.css({ color: '#008000' });
|
||||
}
|
||||
params.contentmsg.show();
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
function sd_create_form(params) {
|
||||
params.form.submit(function () {
|
||||
var flag = false;
|
||||
if (params.form.attr('data-remote') != undefined) {
|
||||
flag = true
|
||||
}
|
||||
var is_checked = sd_check_editor_form_field({
|
||||
issubmit: true,
|
||||
content: params.editor,
|
||||
contentmsg: params.contentmsg,
|
||||
textarea: params.textarea
|
||||
});
|
||||
if (is_checked) {
|
||||
if (flag) {
|
||||
return true;
|
||||
} else {
|
||||
$(this)[0].submit();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
function sd_reset_editor_form(params) {
|
||||
params.form[0].reset();
|
||||
params.textarea.empty();
|
||||
if (params.editor != undefined) {
|
||||
params.editor.html(params.textarea.html());
|
||||
}
|
||||
params.contentmsg.hide();
|
||||
}
|
||||
//第二个参数是高度,可以传,可以不传
|
||||
function sd_create_editor_from_data(id) {
|
||||
var height = arguments[1] ? arguments[1] : undefined;
|
||||
var width = arguments[2] ? arguments[2] : undefined;
|
||||
var type = arguments[3] ? arguments[3] : undefined;
|
||||
var K = KindEditor;
|
||||
$("div[nhname='new_message_" + id + "']").each(function () {
|
||||
var params = {};
|
||||
params.kindutil = K;
|
||||
params.div_form = $(this);
|
||||
params.form = $("form", params.div_form);
|
||||
if (params.form == undefined || params.form.length == 0) {
|
||||
return;
|
||||
}
|
||||
params.textarea = $("textarea[nhname='new_message_textarea_" + id + "']", params.div_form);
|
||||
params.contentmsg = $("span[nhname='contentmsg_" + id + "']", params.div_form);
|
||||
params.toolbar_container = $("div[nhname='toolbar_container_" + id + "']", params.div_form);
|
||||
params.cancel_btn = $("#new_message_cancel_btn_" + id);
|
||||
params.submit_btn = $("#new_message_submit_btn_" + id);
|
||||
params.height = height;
|
||||
params.width = width;
|
||||
if (params.textarea.data('init') == undefined) {
|
||||
params.editor = sd_create_editor(params, id, type);
|
||||
sd_create_form(params);
|
||||
params.cancel_btn.click(function () {
|
||||
sd_reset_editor_form(params);
|
||||
});
|
||||
params.submit_btn.click(function () {
|
||||
var tContents = $("#comment_news_" + id).val();
|
||||
if (tContents != undefined) {
|
||||
var beforeImage = tContents.split("<img");
|
||||
var afterImage = tContents.split("/>");
|
||||
if (beforeImage[0] == "" && afterImage[1] == "") {
|
||||
notice_box('不支持纯图片评论<br/>请在评论中增加文字信息');
|
||||
return;
|
||||
}
|
||||
|
||||
if (tContents.startsWith('<') && tContents.endsWith('>')
|
||||
&& (tContents.indexOf('<link') != -1 || tContents.indexOf('<script') != -1)) {
|
||||
notice_box('不支持包含link或script标签的html内容');
|
||||
return;
|
||||
}
|
||||
}
|
||||
// react环境下,发消息给react组件
|
||||
if (window['__isR'] === true) {
|
||||
$(document).trigger("onReply", { commentContent: tContents, id: id, editor: params.editor });
|
||||
} else {
|
||||
params.form.submit();
|
||||
}
|
||||
});
|
||||
params.textarea.focus(function () {
|
||||
params.editor.focus();
|
||||
});
|
||||
params.textarea.data('init', 1);
|
||||
$(this).show();
|
||||
|
||||
__editor = params.editor
|
||||
}
|
||||
});
|
||||
// });
|
||||
|
||||
div_form = $("div[nhname='new_message_" + id + "']");
|
||||
$(".ke-edit", div_form).css("height", "33px");
|
||||
$(".ke-edit-iframe", div_form).css("height", "33px");
|
||||
|
||||
return __editor;
|
||||
}
|
||||
|
||||
|
||||
//第二个参数是高度,可以传,可以不传
|
||||
function sd_create_editor_from_shixun_data(id) {
|
||||
var height = arguments[1] ? arguments[1] : undefined;
|
||||
var width = arguments[2] ? arguments[2] : undefined;
|
||||
var type = arguments[3] ? arguments[3] : undefined;
|
||||
// KindEditor.ready(function (K) {
|
||||
// react 环境不需要ready方法,页面已经加载完了才执行sd_create_editor_from_data
|
||||
var K = KindEditor;
|
||||
|
||||
$("div[nhname='new_message_" + id + "']").each(function () {
|
||||
var params = {};
|
||||
params.kindutil = K;
|
||||
params.div_form = $(this);
|
||||
params.form = $("form", params.div_form);
|
||||
if (params.form == undefined || params.form.length == 0) {
|
||||
return;
|
||||
}
|
||||
params.textarea = $("textarea[nhname='new_message_textarea_" + id + "']", params.div_form);
|
||||
params.contentmsg = $("span[nhname='contentmsg_" + id + "']", params.div_form);
|
||||
params.toolbar_container = $("div[nhname='toolbar_container_" + id + "']", params.div_form);
|
||||
params.cancel_btn = $("#new_message_cancel_btn_" + id);
|
||||
params.submit_btn = $("#new_message_submit_btn_" + id);
|
||||
params.height = height;
|
||||
params.width = width;
|
||||
if (params.textarea.data('init') == undefined) {
|
||||
params.editor = sd_create_shixun_editor(params, id, type);
|
||||
window._commentInput = params.editor;
|
||||
sd_create_form(params);
|
||||
params.cancel_btn.click(function () {
|
||||
sd_reset_editor_form(params);
|
||||
});
|
||||
// 在react组件中hide
|
||||
// params.submit_btn.click(function () {
|
||||
// $(this).hide()
|
||||
// });
|
||||
// 非react环境才监听这个click
|
||||
!window['__isR'] && params.submit_btn.click(function () {
|
||||
var tContents = $("#comment_news_" + id).val();
|
||||
|
||||
if (tContents != undefined) {
|
||||
var beforeImage = tContents.split("<img");
|
||||
var afterImage = tContents.split("/>");
|
||||
if (beforeImage[0] == "" && afterImage[1] == "") {
|
||||
notice_box('不支持纯图片评论<br/>请在评论中增加文字信息');
|
||||
return;
|
||||
}
|
||||
}
|
||||
params.form.submit();
|
||||
});
|
||||
params.textarea.focus(function () {
|
||||
params.editor.focus();
|
||||
});
|
||||
params.textarea.data('init', 1);
|
||||
$(this).show();
|
||||
}
|
||||
});
|
||||
// });
|
||||
|
||||
div_form = $("div[nhname='new_message_" + id + "']");
|
||||
$(".ke-edit", div_form).css("height", "33px");
|
||||
$(".ke-edit-iframe", div_form).css("height", "33px");
|
||||
}
|