├── README.md
├── about.html
├── browser.html
├── error.html
├── feedback.html
├── history.html
├── index.html
├── main.js
├── new.html
├── package-lock.json
├── package.json
├── public
├── css
│ ├── CampusInfo.css
│ ├── browser.css
│ └── uform.css
├── font
│ ├── fontello.eot
│ ├── fontello.svg
│ ├── fontello.ttf
│ ├── fontello.woff
│ ├── fontello.woff2
│ └── simsun.ttf
├── img
│ ├── Code
│ │ ├── Array数据类型.jpg
│ │ ├── 字符串处理函数.jpg
│ │ └── 数字处理函数.jpg
│ ├── NetWorkData
│ │ ├── VMware-esxi安装.jpg
│ │ ├── VMware-esxi配置.jpg
│ │ └── 制作磁盘阵列.jpg
│ ├── ProductData
│ │ ├── AI制作绘制icon.jpg
│ │ ├── Axure原型图策划.jpg
│ │ └── UI设计图绘制.jpg
│ ├── VideoTeach
│ │ ├── VideoTeach1.png
│ │ ├── VideoTeach2.png
│ │ └── VideoTeach3.png
│ ├── advert
│ │ ├── advert1.jpg
│ │ ├── advert2.jpg
│ │ ├── advert3.jpg
│ │ └── advert4.jpg
│ ├── head.png
│ ├── loading.png
│ └── tray
│ │ ├── app.icns
│ │ ├── app.ico
│ │ ├── logo.png
│ │ └── logo1.png
└── js
│ ├── CampusInfo-data.js
│ ├── CampusInfo.js
│ ├── browser.js
│ ├── preload.js
│ └── uform.js
└── screen
└── browers.png
/README.md:
--------------------------------------------------------------------------------
1 | "# UseStudio.Browers"
2 |
3 | #### 应用页面
4 | 
5 |
6 | #### Build Setup
7 |
8 | ``` bash
9 | # install dependencies
10 | npm install
11 | # serve with hot reload at localhost:9080
12 | npm run dev
13 | # build electron application for production
14 | npm run build:win
15 | npm run build:mac
16 | npm run build:linux
17 | ```
18 |
19 | ---
--------------------------------------------------------------------------------
/about.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 关于我们
6 |
7 |
8 |
9 |
29 |
30 |
--------------------------------------------------------------------------------
/browser.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 有思浏览器
7 |
8 |
9 |
10 |
11 |
12 |
13 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 | - 打开一个新的标签页Ctrl+T
34 | - 打开新的窗口Ctrl+N
35 | - 打开一个新的窗口
36 |
37 | - 历史记录Ctrl+H
38 | - 清除缓存Ctrl+Shift+Del
39 | - 打印Ctrl+P
40 | - 查找Ctrl+F
41 | - 开发人员工具F12/Ctrl+Shift+I
42 |
43 | - 校园资讯Alt+Shift+S
44 | - 问题反馈Alt+Shift+I
45 | - 关于我们F1
46 |
47 | - 退出Ctrl+Shift+Q
48 |
49 |
50 |
51 |
57 |
60 |
61 |
62 |
67 |
68 |
69 | - 在新的标签页打开
70 | - 在新窗口打开
71 | - 删除书签
72 |
73 |
74 |
75 |
76 | - 在新标签页中打开链接
77 | - 在新标签页中打开图片
78 | - 返回Alt+左箭头
79 | - 前进Alt+右箭头
80 | - 重新加载Ctrl+R
81 | - 打印Ctrl+P
82 |
83 | - 查看网页源代码Ctrl+U
84 | - 检查F12/Ctrl+Shift+I
85 |
86 |
87 |
88 | 0/0
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
--------------------------------------------------------------------------------
/error.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
36 |
37 |
38 |
39 |
40 |
无法访问此网站
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
68 |
--------------------------------------------------------------------------------
/feedback.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 有思浏览器反馈
6 |
7 |
8 |
9 |
26 |
27 |
62 |
63 |
--------------------------------------------------------------------------------
/history.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 历史记录
6 |
7 |
8 |
9 |
46 |
47 |
219 |
220 |
221 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 校园资讯
6 |
7 |
8 |
9 |
10 |
11 |
12 |

13 |
有思俱乐部
14 |
校内版
15 |
深圳市 16°C 晴
16 |
17 |
22 |
23 |
24 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
53 |
--------------------------------------------------------------------------------
/main.js:
--------------------------------------------------------------------------------
1 | const electron = require('electron');
2 | const ipc = electron.ipcMain;//用于接收命令的ipc模块
3 | const app = electron.app;
4 | const BrowserWindow = electron.BrowserWindow;//引入一个BrowserWindow
5 | const path = require('path');
6 | const url = require('url');//引入url处理模块
7 | const autoUpdater = require('electron-updater').autoUpdater;
8 | const {ipcMain,Tray} = require('electron');
9 | const dialog = require('electron').dialog;
10 | const Menu = electron.Menu;//引入菜单慕课
11 | const debug = (process.argv.indexOf('--debug')>0);
12 | let appTray = null;//托盘变量
13 | let trayIcon = path.join(__dirname, 'public//img/tray/');
14 | let message={
15 | appName:'有思浏览器',
16 | error:'检查更新出错, 请联系开发人员',
17 | checking:'正在检查更新……',
18 | updateAva:'检测到新版本,正在下载……',
19 | updateNotAva:'现在使用的就是最新版本,不用更新',
20 | downloaded: '最新版本已下载,点击安装进行更新'
21 | };
22 | let trayMenuTemplate = [//托盘菜单
23 | {
24 | label: '退出',
25 | click: function () {
26 | CampusWindow.webContents.send('quit');
27 | CampusWindow.close();
28 | }
29 | }
30 | ];
31 | let CampusWindow,mainWindow,BrowserHistory,BrowserFeedback,AboutUsW;
32 | try {
33 | let flash=app.getPath('pepperFlashSystemPlugin');
34 | app.commandLine.appendSwitch('ppapi-flash-path',flash);
35 | }catch (e) {
36 | dialog.showErrorBox('缺少flash插件', '请前往https://www.flash.cn/下载该插件,点击确定后将打开flash下载地址');
37 | process.argv[1]='https://www.flash.cn/';
38 | }
39 | var version=require(__dirname+"/package.json").version;
40 | let WinReg = require('winreg');
41 | let startOnBoot = {
42 | enableAutoStart: function (name, file, callback) {
43 | let key = getKey();
44 | key.set(name, WinReg.REG_SZ, file, callback || noop)
45 | },
46 | disableAutoStart: function (name, callback) {
47 | let key = getKey();
48 | key.remove(name, callback || noop)
49 | },
50 | getAutoStartValue: function (name, callback) {
51 | let key = getKey();
52 | key.get(name, function (error, result) {
53 | if (result) {
54 | callback(null, result.value)
55 | } else {
56 | callback(error)
57 | }
58 | })
59 | }
60 | };
61 |
62 | let RUN_LOCATION = '\\Software\\Microsoft\\Windows\\CurrentVersion\\Run';
63 |
64 | function getKey() {
65 | return new WinReg({
66 | hive: WinReg.HKCU, // CurrentUser,
67 | key: RUN_LOCATION
68 | })
69 | }
70 | function noop() {
71 | }
72 | function createIndexWindow(flag) {
73 | if(CampusWindow){
74 | CampusWindow.show();
75 | CampusWindow.restore();
76 | CampusWindow.focus();
77 | return
78 | }
79 | appTray = new Tray(path.join(trayIcon, 'logo1.ico'));
80 | //设置此托盘图标的悬停提示内容
81 | appTray.setToolTip('校园资讯');
82 | const contextMenu = Menu.buildFromTemplate(trayMenuTemplate);
83 | //设置此图标的上下文菜单
84 | appTray.setContextMenu(contextMenu);
85 | appTray.on("click", function(){
86 | CampusWindow.isVisible() ? CampusWindow.hide() : CampusWindow.show();
87 | });
88 | CampusWindow = new BrowserWindow({ width: 750, height: 540, maxWidth: 750, maxHeight: 540,resizable:false,frame: false,icon:path.join(trayIcon, 'logo1.png') });
89 | CampusWindow.loadURL(url.format({
90 | pathname: path.join(__dirname, 'index.html'),
91 | protocol: 'file:',
92 | slashes: true
93 | }));
94 | CampusWindow.on('closed', function () {
95 | CampusWindow = null;
96 | appTray.destroy();
97 | });
98 | if(!flag) {
99 | CampusWindow.hide();
100 | }
101 | if(!flag) {
102 | setTimeout(function () {
103 | if (CampusWindow) {
104 | CampusWindow.show();
105 | CampusWindow.restore();
106 | CampusWindow.focus();
107 | setTimeout(function () {
108 | if (CampusWindow) {
109 | CampusWindow.show();
110 | CampusWindow.restore();
111 | CampusWindow.focus();
112 | }
113 | }, 1000 * 60*60);
114 | }
115 | }, 1000 * 60*5);
116 | return false;
117 | }
118 | }
119 | autoUpdater.setFeedURL('http://client.1473.cn/update');//设置检查更新的 url,并且初始化自动更新。这个 url 一旦设置就无法更改。
120 | function createWindow(request_url) {
121 | mainWindow = new BrowserWindow({//游览器窗口
122 | width: 1920,
123 | height: 1080,
124 | backgroundColor:'#fff',
125 | webPreferences:{
126 | 'plugins': true
127 | },
128 | frame: false
129 | });
130 | mainWindow.loadURL(url.format({
131 | pathname: path.join(__dirname, 'browser.html'),
132 | protocol: 'file:',
133 | slashes: true
134 | }));
135 | if(debug) {
136 | mainWindow.webContents.openDevTools();
137 | }
138 | mainWindow.on('closed', function () {
139 | mainWindow = null
140 | });
141 | mainWindow.webContents.on('did-finish-load', function(){
142 | if(request_url) {
143 | mainWindow.webContents.send('flag', '1');
144 | mainWindow.webContents.send('url', request_url)
145 | }else {
146 | mainWindow.webContents.send('flag', '-1');
147 | }
148 | });
149 | mainWindow.focus();
150 | mainWindow.on('maximize',function () {
151 | mainWindow.webContents.send('size', 1);
152 | });
153 | mainWindow.on('unmaximize',function () {
154 | mainWindow.webContents.send('size', -1);
155 | });
156 | }
157 | function CreateHistory() {
158 | if(BrowserHistory){
159 | BrowserHistory.show();
160 | return false;
161 | }
162 | BrowserHistory = new BrowserWindow({//历史记录
163 | width: 1450,
164 | height:900,
165 | resizable:false,
166 | frame: false,
167 | parent:mainWindow
168 | });
169 | BrowserHistory.loadURL(url.format({
170 | pathname: path.join(__dirname, 'history.html'),
171 | protocol: 'file:',
172 | slashes: true
173 | }));
174 | BrowserHistory.on('closed', function () {
175 | BrowserHistory = null
176 | });
177 | }
178 | function createFeedBack(){
179 | if(BrowserFeedback){
180 | BrowserFeedback.show();
181 | return false;
182 | }
183 | BrowserFeedback = new BrowserWindow({
184 | width: 500,
185 | height:320,
186 | frame:false,
187 | modal :true,
188 | resizable: false,
189 | maximizable:false,
190 | minimizable:false,
191 | parent:mainWindow
192 | });
193 | BrowserFeedback.loadURL(url.format({
194 | pathname: path.join(__dirname, 'feedback.html'),
195 | protocol: 'file:',
196 | slashes: true
197 | }));
198 | BrowserFeedback.on('closed', function () {
199 | BrowserFeedback = null
200 | });
201 | }
202 | function CreateAboutUs() {
203 | AboutUsW = new BrowserWindow({
204 | width: 500,
205 | height:280,
206 | frame:false,
207 | modal :true,
208 | resizable: false,
209 | maximizable:false,
210 | minimizable:false,
211 | show:false,
212 | parent:mainWindow
213 | });
214 | AboutUsW.loadURL(url.format({
215 | pathname: path.join(__dirname, 'about.html'),
216 | protocol: 'file:',
217 | slashes: true
218 | }));
219 | AboutUsW.on('closed', function () {
220 | AboutUsW = null
221 | });
222 | }
223 | function CheckUpdate(event) {
224 | //当开始检查更新的时候触发
225 | autoUpdater.on('checking-for-update', function() {
226 | event.sender.send('check-for-update',message.checking);//返回一条信息
227 | });
228 | //当发现一个可用更新的时候触发,更新包下载会自动开始
229 | autoUpdater.on('update-available', function(info) {
230 | AboutUsW.show();
231 | event.sender.send('update-down-success', info);
232 | event.sender.send('check-for-update',message.updateAva);//返回一条信息
233 | });
234 | //当没有可用更新的时候触发
235 | autoUpdater.on('update-not-available', function(info) {
236 | event.sender.send('check-for-update',message.updateNotAva);//返回一条信息
237 | });
238 | autoUpdater.on('error', function(error){
239 | event.sender.send('check-for-update',message.error);//返回一条信息
240 | });
241 | // 更新下载进度事件
242 | autoUpdater.on('download-progress', function(progressObj) {
243 | //这个事件无法使用
244 | mainWindow.webContents.send('download-progress',progressObj)
245 | });
246 | autoUpdater.on('update-downloaded', function () {
247 | event.sender.send('check-for-update',message.downloaded);//返回一条信息
248 | //通过main进程发送事件给renderer进程,提示更新信息
249 | });
250 | //执行自动更新检查
251 | }
252 | function BindIpc(){
253 | ipc.on('window-min', function () {
254 | CampusWindow.minimize();
255 | });
256 | ipc.on('window-max', function () {
257 | if (CampusWindow.isMaximized()) {
258 | CampusWindow.restore();
259 | } else {
260 | CampusWindow.maximize();
261 | }
262 | });
263 | ipc.on('window-close', function () {
264 | CampusWindow.hide();
265 | });
266 | /*校园资讯打开浏览器*/
267 | ipcMain.on('open-browers',function (e,arg) {
268 | if(mainWindow){
269 | mainWindow.webContents.send('url', arg);
270 | mainWindow.show();
271 | mainWindow.focus();
272 | return
273 | }
274 | createWindow(arg)
275 | });
276 | /*浏览器ipc*/
277 | ipc.on('newBrowersWindow',function (e,arg) {
278 | createWindow(arg);
279 | });
280 | ipc.on('CampusInfo',function () {
281 | createIndexWindow(true);
282 | });
283 | ipc.on('elm',function (e,arg){
284 | mainWindow.webContents.send('elm', arg);
285 | });
286 | /*反馈窗口ipc*/
287 | ipc.on('BrowserFeedback-show', function () {
288 | createFeedBack();
289 | });
290 | ipc.on('BrowserFeedback-close', function () {//隐藏
291 | BrowserFeedback.hide();
292 | BrowserFeedback.close();
293 | BrowserFeedback=null;
294 | });
295 | /*历史记录ipc*/
296 | ipc.on('BrowserHistory-show', function () {//显示
297 | CreateHistory();
298 | });
299 | ipc.on('BrowserHistory-close', function () {//隐藏
300 | BrowserHistory.hide();
301 | BrowserHistory.close();
302 | BrowserHistory = null
303 | });
304 | /*关于我们IPC*/
305 | ipc.on('AboutUsW-show', function () {//显示
306 | AboutUsW.show();
307 | });
308 | ipc.on('AboutUsW-close', function () {//隐藏
309 | AboutUsW.hide();
310 | });
311 | /*关于我们获取版本信息*/
312 | ipcMain.on('get-version',function (event,arg) {
313 | event.sender.send('version',version);
314 | });
315 | /*接收打开历史记录*/
316 | ipc.on('open-history', function (event,arg) {//隐藏
317 | mainWindow.webContents.send('open-history', arg)
318 | });
319 | /*检查更新*/
320 | ipc.on('check-for-update', function(event, arg) {
321 | CheckUpdate(event);
322 | autoUpdater.checkForUpdates();
323 | });
324 | ipc.on('update', function(event, arg) {
325 | autoUpdater.quitAndInstall();
326 | });
327 | ipc.on('openlove', function (event, arg) {
328 | let request_url = arg
329 | mainWindow = new BrowserWindow({//游览器窗口
330 | width: 1920,
331 | height: 1080,
332 | backgroundColor:'#fff',
333 | webPreferences:{
334 | 'plugins': true
335 | },
336 | frame: false
337 | });
338 | mainWindow.loadURL(url.format({
339 | pathname: path.join(__dirname, 'browser.html'),
340 | protocol: 'file:',
341 | slashes: true
342 | }));
343 | if(debug) {
344 | mainWindow.webContents.openDevTools();
345 | }
346 | mainWindow.on('closed', function () {
347 | mainWindow = null
348 | });
349 | mainWindow.webContents.on('did-finish-load', function(){
350 | if(request_url) {
351 | mainWindow.webContents.send('flag', '1');
352 | mainWindow.webContents.send('url', request_url)
353 | }else {
354 | mainWindow.webContents.send('flag', '-1');
355 | }
356 | });
357 | mainWindow.focus();
358 | mainWindow.on('maximize',function () {
359 | mainWindow.webContents.send('size', 1);
360 | });
361 | mainWindow.on('unmaximize',function () {
362 | mainWindow.webContents.send('size', -1);
363 | });
364 | })
365 | }
366 |
367 | const gotTheLock = app.makeSingleInstance((commandLine, workingDirectory) => {
368 | createWindow();
369 | });
370 | if (gotTheLock) {
371 |
372 | app.quit();
373 | return;
374 | }
375 | app.on('ready', () => {
376 | startOnBoot.enableAutoStart('有思浏览器', process.execPath+" start");
377 | BindIpc();//ipc通信绑定
378 | createWindow();
379 | CreateAboutUs();
380 | if(process.argv[1]==='start'){
381 | mainWindow.hide();
382 | createIndexWindow(false);
383 | }else{
384 | if(process.argv[1]&&process.argv[1].indexOf('--')<0) {
385 | return createWindow(process.argv[1]);
386 | }
387 | mainWindow.show();
388 | }
389 | });
390 | app.on('window-all-closed', function () {
391 | if (process.platform !== 'darwin') {
392 | app.quit()
393 | }
394 | });
395 | app.on('activate', function () {
396 | if (CampusWindow === null&&process.argv[1]==='browers') {
397 | createIndexWindow(true)
398 | }
399 | });
--------------------------------------------------------------------------------
/new.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 新建标签页
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Usestudio-Browser",
3 | "main": "main.js",
4 | "private": true,
5 | "productName": "Usestudio-Browser",
6 | "version": "3.0.2",
7 | "author": "ZJINH",
8 | "description": "有思浏览器",
9 | "email": "211775259@qq.com",
10 | "dependencies": {
11 | "electron-updater": "^4.0.0",
12 | "fs": "0.0.1-security",
13 | "regedit": "^3.0.0",
14 | "winreg": "^1.2.4"
15 | },
16 | "devDependencies": {
17 | "electron": "^2.0.12"
18 | },
19 | "build": {
20 | "publish": [
21 | {
22 | "provider": "generic",
23 | "url": "http://client.1473.cn/update"
24 | }
25 | ],
26 | "appId": "Usestudio.CampusInfo",
27 | "directories": {
28 | "output": "build"
29 | },
30 | "win": {
31 | "icon": "public\\img\\tray\\app.ico",
32 | "artifactName": "${productName}_setup.${ext}",
33 | "target": [
34 | "nsis"
35 | ]
36 | },
37 | "asar": true,
38 | "nsis": {
39 | "oneClick": false,
40 | "menuCategory": "有思俱乐部",
41 | "shortcutName": "互联办公",
42 | "allowToChangeInstallationDirectory": true,
43 | "perMachine": true,
44 | "runAfterFinish": true
45 | },
46 | "mac": {
47 | "icon": "public\\img\\tray\\app.icns",
48 | "category": "browers",
49 | "target": [
50 | "dmg"
51 | ]
52 | },
53 | "dmg": {
54 | "window": {
55 | "x": 100,
56 | "y": 100,
57 | "width": 500,
58 | "height": 300
59 | }
60 | }
61 | },
62 | "linux": {
63 | "icon": "public\\img\\tray\\app.ico",
64 | "target": [
65 | "AppImage",
66 | "tar.gz"
67 | ]
68 | },
69 | "scripts": {
70 | "dev": "electron .",
71 | "build:win": "electron-builder --win --ia32",
72 | "build:mac": "electron-builder --mac",
73 | "build:linux": "electron-builder --platform=linux"
74 | },
75 | "license": "ZJINH"
76 | }
77 |
--------------------------------------------------------------------------------
/public/css/CampusInfo.css:
--------------------------------------------------------------------------------
1 | *{
2 | margin: 0;
3 | padding: 0;
4 | font-family:Microsoft YaHei,fontello;
5 | -webkit-font-smoothing: antialiased;
6 | -moz-osx-font-smoothing: grayscale;
7 | list-style: none;
8 | box-sizing: border-box;
9 | -moz-user-select: none;
10 | -webkit-user-select: none;
11 | -ms-user-select: none;
12 | -khtml-user-select: none;
13 | user-select: none;
14 | }
15 | button:focus,button{
16 | outline: none;
17 | cursor: pointer;
18 | }
19 | @font-face {
20 | font-family: 'fontello';
21 | src: url('../font/fontello.eot?143z8w');
22 | src: url('../font/fontello.eot?143z8w#iefix') format('embedded-opentype'),
23 | url('../font/fontello.ttf?143z8w') format('truetype'),
24 | url('../font/fontello.woff?143z8w') format('woff'),
25 | url('../font/fontello.svg?143z8w#fontello') format('svg');
26 | font-weight: normal;
27 | font-style: normal;
28 | }
29 | @font-face {
30 | font-family: 'simsun';
31 | src: url('../font/simsun.ttf');
32 | src: url('../font/simsun.ttf') format('ttf'),
33 | url('../font/simsun.ttf') format('ttf');
34 | font-weight: normal;
35 | font-style: normal;
36 | }
37 |
38 | [class^="icon-"], [class*=" icon-"]{
39 | display: inline-block;
40 | font: normal normal normal 14px/1 fontello,Microsoft YaHei;
41 | font-size: inherit;
42 | text-rendering: auto;
43 | -webkit-font-smoothing: antialiased;
44 | -moz-osx-font-smoothing: grayscale;
45 | }
46 | /*校园资讯头部样式*/
47 | .CampusInfoHead{
48 | width: 100%;
49 | height: 55px;
50 | background: #f3f6fc;
51 | }
52 | .CampusInfoHeadImg{
53 | float: right;
54 | margin-right: 90px;
55 | }
56 | .CampusInfoHeadTitle{
57 | float: left;
58 | height: calc(100% - 30px);
59 | }
60 | .CampusInfoHeadTitle *{
61 | float: left;
62 | }
63 | .CampusInfoHeadTitle img{
64 | margin: 20px;
65 | margin-right: 0px;
66 | }
67 | .CampusInfoHeadTitle p{
68 | font-size: 24px;
69 | color: #575757;
70 | font-style: italic;
71 | margin: 20px 7px 0px 0px;
72 | -moz-transform: matrix( 0.9341021117052,0,0,0.9341021117052,0,0);
73 | -webkit-transform: matrix( 0.9341021117052,0,0,0.9341021117052,0,0);
74 | -ms-transform: matrix( 0.9341021117052,0,0,0.9341021117052,0,0);
75 | }
76 | .CampusInfoHeadTitle span{
77 | margin-top: 29px;
78 | background: #5691e1;
79 | color: rgb(228, 228, 230);
80 | padding: 2px 5px;
81 | transform: skew(-20deg);
82 | font-size: 12px;
83 | height: 15px;
84 | line-height: 15px;
85 | border-radius: 3px;
86 | font-style: normal;
87 | box-sizing: unset;
88 | }
89 | .CampusInfoHeadTitle span div{
90 | -webkit-transform: skew(20deg);
91 | }
92 | .CampusInfoHeadWeather{
93 | font-style: normal!important;
94 | font-size: 13px!important;
95 | color: rgb(63, 125, 211)!important;
96 | margin-top: 32px!important;
97 | margin-left: 20px!important;
98 | }
99 | /*校园资讯控制导航样式*/
100 | .CampusInfoHeadNav{
101 | float: left;
102 | width: calc(100% - 24px);
103 | height: 30px;
104 | padding: 0 12px;
105 | background: #f3f6fc;
106 | border-bottom: 1px solid #dcdbdb;
107 | box-sizing: unset;
108 | }
109 | .CampusInfoHeadNav li{
110 | float: left;
111 | font-size: 14px;
112 | padding: 0 10px;
113 | line-height: 30px;
114 | border-bottom: 1px solid rgba(0,0,0,0);
115 | color: #525252;
116 | margin-right: 5px;
117 | }
118 | .CampusInfoHeadNav li:hover,.CampusInfoHeadNavActive{
119 | color: #2371d7!important;
120 | border-bottom: 1px solid #3272cb!important;
121 | }
122 | /*校园资讯控制按钮样式*/
123 | .CampusInfoHeadControl{
124 | float: right;
125 | }
126 | .CampusInfoHeadControl button{
127 | float: left;
128 | line-height: 33px;
129 | width: 33px;
130 | height: 33px;
131 | background: none;
132 | color: #548fde;
133 | border: none;
134 | font-size: 16px;
135 | }
136 | .CampusInfoHeadControl .icon-cancel:hover{
137 | color: #d82222;
138 | }
139 | /*校园资讯控制内容容器样式*/
140 | .CampusInfoMain{
141 | width: 100%;
142 | height: calc(100% - 86px);
143 | overflow: hidden;
144 | }
145 | .CampusInfoContainer{
146 | width: 100%;
147 | height: 100%;
148 | padding: 15px 22px;
149 | display: none;
150 | }
151 | .CampusInfoContainer *{
152 | float: left;
153 | }
154 | .CampusInfoContLeft{
155 | width: 180px;
156 | height: 100%;
157 | }
158 | .CampusInfoContCenter{
159 | width: 355px;
160 | height: 100%;
161 | padding: 0 15px;
162 | }
163 | .CampusInfoContRight{
164 | width: 170px;
165 | height: 100%;
166 | }
167 | /*左侧内容元素*/
168 | .CampusInfoContLeftContent:nth-child(2){
169 | margin: 10px 0;
170 | }
171 | .CampusInfoContLeftContent{
172 | width: 100%;
173 | height: 134.5px;
174 | position: relative;
175 | cursor: pointer;
176 | }
177 | .CampusInfoContLeftContent img{
178 | width: 100%;
179 | height: 100%;
180 | }
181 | .CampusInfoContLeftContent p{
182 | text-align: center;
183 | width: 100%;
184 | background-color: rgba(65, 65, 65, 0.65);
185 | color: #fff;
186 | height: 19px;
187 | position: absolute;
188 | bottom: 0;
189 | }
190 | /*中间内容*/
191 | .CampusInfoContCenterContent:nth-child(2){
192 | margin: 10px 0;
193 | }
194 | .CampusInfoContCenterTitle{
195 | width: 100%;
196 | text-align: center;
197 | font-size: 16px;
198 | color: rgb(17, 80, 159);
199 | font-weight: 500;
200 | margin: 5px 0px;
201 | height: 21px;
202 | overflow: hidden;
203 | text-overflow: ellipsis;
204 | }
205 | .CampusInfoContCenterContent{
206 | width: 100%;
207 | height: 134.5px;
208 | }
209 | .CampusInfoContCenterCArea4{
210 | max-width: 100%;
211 | }
212 | .CampusInfoContCenterCArea8{
213 | min-width: 40%;
214 | max-width: 50%;
215 | }
216 | .CampusInfoContCenterCArea4,.CampusInfoContCenterCArea8{
217 | height: 28px;
218 | font-size: 14px;
219 | color: #272727;
220 | padding: 0px 10px;
221 | padding-right: 0;
222 | font-family: "SimSun";
223 | line-height: 27px;
224 | display: block;
225 | border: 1px solid rgba(0,0,0,0);
226 | word-break: break-all;
227 | }
228 | .CampusInfoContCenterCArea4:hover,.CampusInfoContCenterCArea8:hover,.CampusInfoContCenterTitle:hover{
229 | border-bottom: 1px solid #bd0a01;
230 | color: #bd0a01;
231 | cursor: pointer;
232 | }
233 | /*右侧内容元素*/
234 | .CampusInfoContRightContent:nth-child(2){
235 | margin-top: 10px;
236 | height: 135px;
237 | }
238 | .CampusInfoContRightContent{
239 | width: 100%;
240 | height: 280px;
241 | cursor: pointer;
242 | }
243 | /*加载动画*/
244 | .CampusInfoLoading{
245 | width: 100%;
246 | height: 100%;
247 | }
248 | .CampusInfoLoading span{
249 | display: block;
250 | text-align: center;
251 | position: absolute;
252 | left: calc(50% - 32px);
253 | top: calc(50% - 32px);
254 | }
255 | .CampusInfoLoading span div{
256 | position: absolute;
257 | top: 25px;
258 | left: 15px;
259 | font-size: 18px;
260 | color: #fff;
261 | }
262 |
263 | /*字体图标*/
264 | .icon-left:before { content: '\e800'; } /* '' */
265 | .icon-right:before { content: '\e801'; } /* '' */
266 | .icon-cancel:before { content: '\e802'; } /* '' */
267 | .icon-minus:before { content: '\e803'; } /* '' */
268 | .icon-menu:before { content: '\e804'; } /* '' */
269 | .icon-play-circled2:before { content: '\e805'; } /* '' */
270 | .icon-play:before { content: '\e806'; } /* '' */
271 | .icon-lock:before { content: '\e807'; } /* '' */
272 | .icon-plus:before { content: '\e808'; } /* '' */
273 | .icon-cog:before { content: '\e809'; } /* '' */
274 | .icon-th-list:before { content: '\f009'; } /* '' */
275 | .icon-ccw:before { content: '\f025'; } /* '' */
276 | .icon-play-circled:before { content: '\f144'; } /* '' */
277 | /*旋转*/
278 | .animate-spin {
279 | -moz-animation: spin 1.5s infinite linear;
280 | -o-animation: spin 1.5s infinite linear;
281 | -webkit-animation: spin 1.5s infinite linear;
282 | animation: spin 1.5s infinite linear;
283 | display: inline-block;
284 | }
285 | @-moz-keyframes spin {
286 | 0% {
287 | -moz-transform: rotate(0deg);
288 | -o-transform: rotate(0deg);
289 | -webkit-transform: rotate(0deg);
290 | transform: rotate(0deg);
291 | }
292 | 100% {
293 | -moz-transform: rotate(359deg);
294 | -o-transform: rotate(359deg);
295 | -webkit-transform: rotate(359deg);
296 | transform: rotate(359deg);
297 | }
298 | }
299 | @-webkit-keyframes spin {
300 | 0% {
301 | -moz-transform: rotate(0deg);
302 | -o-transform: rotate(0deg);
303 | -webkit-transform: rotate(0deg);
304 | transform: rotate(0deg);
305 | }
306 |
307 | 100% {
308 | -moz-transform: rotate(359deg);
309 | -o-transform: rotate(359deg);
310 | -webkit-transform: rotate(359deg);
311 | transform: rotate(359deg);
312 | }
313 | }
314 | @-o-keyframes spin {
315 | 0% {
316 | -moz-transform: rotate(0deg);
317 | -o-transform: rotate(0deg);
318 | -webkit-transform: rotate(0deg);
319 | transform: rotate(0deg);
320 | }
321 |
322 | 100% {
323 | -moz-transform: rotate(359deg);
324 | -o-transform: rotate(359deg);
325 | -webkit-transform: rotate(359deg);
326 | transform: rotate(359deg);
327 | }
328 | }
329 | @-ms-keyframes spin {
330 | 0% {
331 | -moz-transform: rotate(0deg);
332 | -o-transform: rotate(0deg);
333 | -webkit-transform: rotate(0deg);
334 | transform: rotate(0deg);
335 | }
336 |
337 | 100% {
338 | -moz-transform: rotate(359deg);
339 | -o-transform: rotate(359deg);
340 | -webkit-transform: rotate(359deg);
341 | transform: rotate(359deg);
342 | }
343 | }
344 | @keyframes spin {
345 | 0% {
346 | -moz-transform: rotate(0deg);
347 | -o-transform: rotate(0deg);
348 | -webkit-transform: rotate(0deg);
349 | transform: rotate(0deg);
350 | }
351 |
352 | 100% {
353 | -moz-transform: rotate(359deg);
354 | -o-transform: rotate(359deg);
355 | -webkit-transform: rotate(359deg);
356 | transform: rotate(359deg);
357 | }
358 | }
--------------------------------------------------------------------------------
/public/css/browser.css:
--------------------------------------------------------------------------------
1 | @charset "utf-8";
2 | * {
3 | margin: 0;
4 | padding: 0;
5 | font-family: Microsoft YaHei, fontello;
6 | -webkit-font-smoothing: antialiased;
7 | -moz-osx-font-smoothing: grayscale;
8 | list-style: none;
9 | }
10 |
11 | body {
12 | margin: 0;
13 | padding: 0;
14 | overflow: hidden;
15 | }
16 |
17 | body,
18 | html {
19 | height: 100%;
20 | -webkit-text-size-adjust: 100%;
21 | -ms-text-size-adjust: 100%;
22 | }
23 |
24 | ul,
25 | li {
26 | margin: 0;
27 | padding: 0;
28 | list-style: none;
29 | }
30 |
31 | button:focus,
32 | button {
33 | outline: none;
34 | cursor: pointer;
35 | }
36 |
37 | a,
38 | a:hover,
39 | a:link,
40 | a:visited,
41 | button,
42 | button:focus,
43 | button:hover,
44 | i,
45 | i:hover,
46 | img,
47 | img:hover,
48 | input,
49 | input:focus,
50 | input:hover,
51 | select:focus,
52 | span,
53 | span:hover,
54 | textarea:focus {
55 | -webkit-transition: all .35s;
56 | -moz-transition: all .35s;
57 | -o-transition: all .35s;
58 | }
59 |
60 | a:hover,
61 | a:link,
62 | a:visited {
63 | text-decoration: none;
64 | }
65 |
66 | button:hover {
67 | opacity: .8;
68 | cursor: pointer;
69 | }
70 |
71 | [ripple],
72 | button {
73 | position: relative;
74 | transform: translate3d(0, 0, 0);
75 | overflow: hidden;
76 | }
77 |
78 | [ripple]:after,
79 | button:after {
80 | content: "";
81 | display: block;
82 | position: absolute;
83 | width: 100%;
84 | height: 100%;
85 | top: 0;
86 | left: 0;
87 | pointer-events: none;
88 | background-image: radial-gradient(circle, #666 10%, transparent 10.01%);
89 | background-repeat: no-repeat;
90 | background-position: 50%;
91 | transform: scale(10, 10);
92 | opacity: 0;
93 | transition: transform .3s, opacity .5s;
94 | }
95 |
96 | [ripple]:active:after,
97 | button:active:after {
98 | transform: scale(0, 0);
99 | opacity: .3;
100 | transition: 0s;
101 | }
102 |
103 | .clearfix {
104 | zoom: 1;
105 | }
106 |
107 |
108 | /*通用头部样式*/
109 |
110 | .bowerTop {
111 | width: 100%;
112 | height: 1px;
113 | }
114 |
115 | .bowerHeader {
116 | position: relative;
117 | height: 20px;
118 | }
119 |
120 | .browerHeaderControl {
121 | position: absolute;
122 | right: 0px;
123 | }
124 |
125 | .browerHeaderControl button {
126 | width: 50px;
127 | height: 25px;
128 | border: transparent;
129 | background: #fff;
130 | font-size: 13px;
131 | }
132 |
133 | .browerHeaderControl button:hover {
134 | background: #eee;
135 | }
136 |
137 | .browerHeaderControl .close:hover {
138 | background: #E83C3C!important;
139 | color: #fff!important;
140 | }
141 |
142 | .browerHeaderControl .icon-cancel:hover {
143 | background: #e66350 !important;
144 | color: #fff;
145 | }
146 |
147 | .browerHeaderControl .icon-minus {
148 | color: #333;
149 | }
150 |
151 |
152 | /*浏览器搜索样式*/
153 |
154 | .BrowerHead {
155 | width: 100%;
156 | height: 26px;
157 | display: inline-flex;
158 | padding: 4px 0;
159 | background: #f5f5f5;
160 | border-top: 1px solid #ccc;
161 | border-bottom: 1px solid #ccc;
162 | }
163 |
164 | .Favorites {
165 | width: 100%;
166 | height: 26px;
167 | display: inline-flex;
168 | padding: 4px 0;
169 | background: #ffffff;
170 | /* border-top: 1px solid #ccc; */
171 | border-bottom: 1px solid #ccc;
172 | }
173 |
174 | .Favorites>ul>li {
175 | height: 25px;
176 | margin: 0 3px;
177 | border-radius: 5px;
178 | padding: 0 5px;
179 | background: -webkit-linear-gradient(left, white, #f1f1ff);
180 | -webkit-transition: all .3s;
181 | -moz-transition: all .3s;
182 | -ms-transition: all .3s;
183 | -o-transition: all .3s;
184 | transition: all .3s;
185 | cursor: pointer;
186 | float: left;
187 | -moz-user-select: none;
188 | -webkit-user-select: none;
189 | -ms-user-select: none;
190 | -khtml-user-select: none;
191 | user-select: none;
192 | }
193 |
194 | .Favorites>ul>li:hover {
195 | background: #f1f1f1;
196 | }
197 |
198 | .Favorites>ul>li img {
199 | width: 20px;
200 | float: left;
201 | line-height: 25px;
202 | margin: 3px 3px;
203 | }
204 |
205 | .Favorites>ul>li p {
206 | width: auto;
207 | max-width: 81px;
208 | float: left;
209 | font-size: 12px;
210 | line-height: 25px;
211 | margin: 0 3px;
212 | overflow: hidden;
213 | }
214 |
215 | .BrowerHead button {
216 | float: left;
217 | overflow: hidden;
218 | margin: 0 5px;
219 | background: none;
220 | width: 26px;
221 | border: none;
222 | font-size: 16px;
223 | }
224 |
225 | .BrowerHead button:hover {
226 | background: #dcdcdc;
227 | border-radius: 3px;
228 | }
229 |
230 | .BrowerUrlArea {
231 | width: calc(100% - 150px) !important;
232 | padding: 2px 5px !important;
233 | text-align: left !important;
234 | border: 1px solid #dcdcdc;
235 | background: #fff;
236 | border-radius: 3px;
237 | }
238 |
239 | .BrowerUrlArea>i {
240 | margin: 2px;
241 | }
242 |
243 | .BrowerUrlArea * {
244 | float: left;
245 | }
246 |
247 | .BrowerUrlArea span {
248 | float: left;
249 | width: 20px;
250 | text-align: center;
251 | line-height: 22px;
252 | font-size: 14px;
253 | }
254 |
255 | .BrowerUrlArea input {
256 | float: left;
257 | width: calc(100% - 42px) !important;
258 | height: 20px;
259 | border: 0 solid #d2d2d2;
260 | outline: none;
261 | text-indent: 10px;
262 | border-left: 1px solid #d2d2d2;
263 | display: block;
264 | background: none;
265 | }
266 |
267 | .BrowerHead .icon-ellipsis-vert {
268 | color: #8c8c8c;
269 | font-weight: lighter;
270 | font-size: 18px;
271 | padding-top: 2px;
272 | }
273 |
274 | .FavoritesMore {
275 | position: absolute;
276 | right: 5px;
277 | padding: 2px;
278 | cursor: pointer;
279 | color: #CCCCCC;
280 | }
281 |
282 | #FavoritesUl {
283 | overflow: hidden;
284 | z-index: 99999999;
285 | }
286 |
287 |
288 | /* 标签页右键菜单样式 */
289 |
290 | #US_TagSet {
291 | z-index: 999;
292 | }
293 |
294 | .icon-ellipsis-verter {
295 | color: #8c8c8c;
296 | font-weight: lighter;
297 | font-size: 18px;
298 | padding-top: 2px;
299 | }
300 |
301 | .bowerHeaderSeach .bowerMenu {
302 | float: right;
303 | }
304 |
305 | .bowerHeaderSeach .bowerMenu:hover {
306 | background: #ddd;
307 | }
308 |
309 | .bowerHeaderSeach .icon-menu {
310 | font-size: 21px;
311 | color: #5a5a5a;
312 | }
313 |
314 |
315 | /*选项卡样式*/
316 |
317 | .bowerCreaterWindow li {
318 | position: relative;
319 | max-width: 180px !important;
320 | width: 150px;
321 | min-width: 10px !important;
322 | top: 1px;
323 | height: 30px;
324 | display: initial;
325 | margin-right: 10px;
326 | text-align: center;
327 | color: #000;
328 | line-height: 43px;
329 | background-color: #e2e2e2;
330 | border-top: 1px solid #a2a2a2;
331 | z-index: 1;
332 | -webkit-app-region: no-drag;
333 | -webkit-transition: all .3s cubic-bezier(0.3, .1, .58, 1);
334 | -moz-transition: all .3s cubic-bezier(0.3, .1, .58, 1);
335 | transition: all .3s cubic-bezier(0.3, .1, .58, 1);
336 | -moz-user-select: none;
337 | -webkit-user-select: none;
338 | -ms-user-select: none;
339 | -khtml-user-select: none;
340 | user-select: none;
341 | }
342 |
343 | .BrowerActive {
344 | background-color: #f2f2f2 !important;
345 | border-top-color: #a9a9a9 !important;
346 | z-index: 999 !important;
347 | }
348 |
349 | .Listindex {
350 | z-index: 999 !important;
351 | }
352 |
353 | .BrowerActive {
354 | border-top: 1px solid #ccc!important;
355 | }
356 |
357 | .BrowerActive:before {
358 | border-top: 1px solid #ccc!important;
359 | background-color: #f2f2f2 !important;
360 | border-right-color: #ccc !important;
361 | }
362 |
363 | .BrowerActive:after {
364 | border-top: 1px solid #ccc!important;
365 | background-color: #f2f2f2 !important;
366 | border-left-color: #ccc !important;
367 | }
368 |
369 | .bowerCreaterWindow li:before,
370 | .bowerCreaterWindow li:after {
371 | content: '';
372 | position: absolute;
373 | display: block;
374 | width: 10px;
375 | height: 29px;
376 | top: -1px;
377 | background-color: #e2e2e2;
378 | border-top: 1px solid #a2a2a2;
379 | -webkit-transition: all .3s cubic-bezier(0.3, .1, .58, 1);
380 | -moz-transition: all .3s cubic-bezier(0.3, .1, .58, 1);
381 | transition: all .3s cubic-bezier(0.3, .1, .58, 1);
382 | }
383 |
384 | .bowerCreaterWindow li:before {
385 | right: -6px;
386 | border-right: 1px solid #a2a2a2;
387 | transform: skewX(20deg);
388 | }
389 |
390 | .bowerCreaterWindow li:after {
391 | left: -6px;
392 | transform: skewX(-20deg);
393 | border-left: 1px solid #a2a2a2;
394 | }
395 |
396 | .bowerCreaterWindow {
397 | float: left;
398 | width: calc(100% - 195px);
399 | height: 29px;
400 | display: inline-flex;
401 | overflow: unset;
402 | margin-left: 20px;
403 | -webkit-transition: all .3s cubic-bezier(0.3, .1, .58, 1);
404 | -moz-transition: all .3s cubic-bezier(0.3, .1, .58, 1);
405 | transition: all .3s cubic-bezier(0.3, .1, .58, 1);
406 | }
407 |
408 | .BrowerListBody {
409 | display: inline-block;
410 | position: relative;
411 | width: calc(100% - 3px);
412 | height: 32px;
413 | z-index: 2;
414 | top: -2px;
415 | }
416 |
417 | .BrowerList img {
418 | float: left;
419 | width: 16px;
420 | height: 16px;
421 | margin-top: 8px;
422 | }
423 |
424 | .BrowerList p {
425 | float: left;
426 | min-width: 0;
427 | max-width: 80%;
428 | width: calc(100% - 40px);
429 | margin: 0 3px;
430 | overflow: hidden;
431 | text-overflow: ellipsis;
432 | white-space: nowrap;
433 | line-height: 34px;
434 | text-align: left;
435 | font-size: 12px;
436 | margin-top: -1px;
437 | }
438 |
439 | .BrowerList i {
440 | float: right;
441 | width: 8px;
442 | height: 8px;
443 | padding: 4px;
444 | border-radius: 50%;
445 | font-size: 11px;
446 | text-align: center;
447 | line-height: 9px;
448 | margin-top: 8px;
449 | color: #888888;
450 | }
451 |
452 | .BrowerList i:hover {
453 | background: #ba4848;
454 | color: #fff;
455 | }
456 |
457 | button.BrowwerAdd {
458 | width: 32px !important;
459 | height: 18px;
460 | padding: 7px;
461 | margin: 6px 0 0 0;
462 | -webkit-transform: skew(20deg);
463 | -moz-transform: skew(20deg);
464 | -o-transform: skew(20deg);
465 | background: white;
466 | border: 1px solid #ccc;
467 | border-radius: 3px;
468 | -webkit-app-region: no-drag;
469 | }
470 |
471 |
472 | /*浏览器显示网页部分样式*/
473 |
474 | .BrowerContainer {
475 | height: calc(100% - 115px);
476 | position: absolute;
477 | width: 100%;
478 | left: 0;
479 | top: 116px;
480 | }
481 |
482 | .BrowerContainer webview,
483 | webview object {
484 | height: 100% !important;
485 | width: 100% !important;
486 | }
487 |
488 |
489 | /*右键菜单样式*/
490 |
491 | .MouseMenuMain {
492 | position: absolute;
493 | z-index: 22;
494 | display: none;
495 | width: auto;
496 | height: auto;
497 | min-width: 90pt;
498 | background: #fff;
499 | box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
500 | -moz-user-select: none;
501 | -webkit-user-select: none;
502 | -ms-user-select: none;
503 | -khtml-user-select: none;
504 | user-select: none;
505 | }
506 |
507 | .MouseMenuMain li {
508 | width: auto;
509 | max-width: 400px;
510 | font-size: 13px;
511 | padding: 6px 18px;
512 | color: #333;
513 | text-align: left;
514 | white-space: nowrap;
515 | margin-bottom: 2px;
516 | }
517 |
518 | .MouseMenuMain li span {
519 | float: right;
520 | margin-left: 40px;
521 | color: #bfbfbf;
522 | }
523 |
524 | .MouseMenuMain li:hover {
525 | background-color: #eee;
526 | color: #000;
527 | cursor: pointer;
528 | }
529 |
530 | .US_BookmarkSet {
531 | position: absolute;
532 | z-index: 22;
533 | width: auto;
534 | height: auto;
535 | display: none;
536 | min-width: 90pt;
537 | background: #fff;
538 | z-index: 999999999;
539 | box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
540 | -moz-user-select: none;
541 | -webkit-user-select: none;
542 | -ms-user-select: none;
543 | -khtml-user-select: none;
544 | user-select: none;
545 | }
546 |
547 | .US_BookmarkSet li {
548 | width: auto;
549 | max-width: 400px;
550 | font-size: 13px;
551 | padding: 6px 18px;
552 | color: #333;
553 | text-align: left;
554 | white-space: nowrap;
555 | margin-bottom: 2px;
556 | }
557 |
558 | .US_BookmarkSet li:hover {
559 | background-color: #eee;
560 | color: #000;
561 | cursor: pointer;
562 | }
563 |
564 | .MouseMenuMainer {
565 | position: absolute;
566 | z-index: 22;
567 | width: auto;
568 | height: auto;
569 | min-width: 90pt;
570 | background: #fff;
571 | box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
572 | -moz-user-select: none;
573 | -webkit-user-select: none;
574 | -ms-user-select: none;
575 | -khtml-user-select: none;
576 | user-select: none;
577 | }
578 |
579 | .MouseMenuMainer {
580 | width: 300px;
581 | }
582 |
583 | .MouseMenuMainer li {
584 | width: auto;
585 | max-width: 400px;
586 | font-size: 13px;
587 | padding: 6px 18px;
588 | color: #333;
589 | text-align: left;
590 | white-space: nowrap;
591 | margin-bottom: 2px;
592 | }
593 |
594 | .MouseMenuMainer li img {
595 | width: 20px;
596 | float: left;
597 | line-height: 25px;
598 | margin: 3px 3px;
599 | }
600 |
601 | .MouseMenuMainer li p {
602 | font-size: 12px;
603 | line-height: 25px;
604 | margin: 0 3px;
605 | }
606 |
607 | .MouseMenuMainer li:hover {
608 | background-color: #eee;
609 | color: #000;
610 | cursor: pointer;
611 | }
612 |
613 | .MouseMenuMainStep {
614 | width: 100%;
615 | padding: 0 !important;
616 | height: 1px;
617 | background: #e8e8e8;
618 | margin: 5px 0;
619 | }
620 |
621 |
622 | /*查找菜单样式*/
623 |
624 | .BrowerFind {
625 | width: 320px;
626 | height: 35px;
627 | background: #fff;
628 | box-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 0 1px rgba(0, 0, 0, .2);
629 | position: absolute;
630 | right: 20px;
631 | top: 80px;
632 | padding: 5px;
633 | z-index: 10;
634 | -webkit-animation-duration: .35s;
635 | animation-duration: .35s;
636 | -webkit-animation-fill-mode: both;
637 | animation-fill-mode: both;
638 | -webkit-animation-name: fadeIn;
639 | animation-name: fadeIn;
640 | display: none;
641 | overflow: hidden;
642 | -moz-user-select: none;
643 | -webkit-user-select: none;
644 | -ms-user-select: none;
645 | -khtml-user-select: none;
646 | user-select: none;
647 | }
648 |
649 | .BrowerFind * {
650 | float: left;
651 | }
652 |
653 | .BrowerFind input {
654 | width: 150px;
655 | height: 35px;
656 | border: none;
657 | font-size: 14px;
658 | padding: 0 2px;
659 | }
660 |
661 | .BrowerFind input:focus {
662 | outline: none;
663 | }
664 |
665 | .BrowerFind span {
666 | width: 50px;
667 | font-size: 12px;
668 | line-height: 35px;
669 | color: #888888;
670 | background: #fff;
671 | text-align: center;
672 | border-right: 1px solid #eee;
673 | }
674 |
675 | .BrowerFind button {
676 | background: none;
677 | border: none;
678 | width: 32px;
679 | margin: 0 3px;
680 | height: 35px;
681 | color: #888888;
682 | font-weight: bold;
683 | font-size: 18px;
684 | }
685 |
686 | .BrowerFind .icon-times {
687 | font-size: 14px;
688 | }
689 |
690 |
691 | /* 历史记录样式 */
692 |
693 | .HistoryMain {
694 | width: 100%;
695 | height: 100%;
696 | }
697 |
698 | .HistoryMain * {
699 | box-sizing: border-box;
700 | }
701 |
702 | .HistoryHead {
703 | width: 100%;
704 | height: 55px;
705 | background: #0b7aeb;
706 | -moz-user-select: none;
707 | -webkit-user-select: none;
708 | -ms-user-select: none;
709 | -khtml-user-select: none;
710 | user-select: none;
711 | }
712 |
713 | input::-webkit-input-placeholder {
714 | /* WebKit browsers */
715 | color: #fff;
716 | }
717 |
718 | input:-moz-placeholder {
719 | /* Mozilla Firefox 4 to 18 */
720 | color: #fff;
721 | }
722 |
723 | input::-moz-placeholder {
724 | /* Mozilla Firefox 19+ */
725 | color: #fff;
726 | }
727 |
728 | input::-ms-input-placeholder {
729 | /* Internet Explorer 10+ */
730 | color: #fff;
731 | }
732 |
733 | .HistorySelect {
734 | width: 500px;
735 | height: 100%;
736 | margin: auto;
737 | }
738 |
739 | .HistorySelect div {
740 | width: 450px;
741 | height: 45px;
742 | background: #0062ea;
743 | position: relative;
744 | top: 5px;
745 | margin: auto;
746 | }
747 |
748 | .HistorySelect input {
749 | border: 0px;
750 | background: #0062ea;
751 | width: 400px;
752 | height: 35px;
753 | position: relative;
754 | top: 5px;
755 | color: #ffffff;
756 | margin-left: 20px;
757 | outline: none;
758 | z-index: 99999;
759 | }
760 |
761 | .browerHeaderControler {
762 | position: relative;
763 | }
764 |
765 | .HistoryHead p {
766 | float: left;
767 | font-size: 18px;
768 | color: #fff;
769 | line-height: 55px;
770 | padding-left: 15px;
771 | }
772 |
773 | .HistoryContainer {
774 | padding: 0px 100px 20px;
775 | height: 866px;
776 | background: #eee;
777 | overflow: auto;
778 | width: 1200px;
779 | float: right;
780 | }
781 |
782 | .Historyoperating {
783 | height: 866px;
784 | background: #eee;
785 | overflow: auto;
786 | width: 251px;
787 | float: left;
788 | }
789 |
790 | .Historyoperating ul {
791 | margin: 40px 00px;
792 | }
793 |
794 | .Historyoperating ul li {
795 | width: auto;
796 | transition: all .3s;
797 | height: 40px;
798 | line-height: 40px;
799 | padding: 0px 20px;
800 | cursor: pointer;
801 | }
802 |
803 | .Historyoperating ul li:hover {
804 | background: #dfdfdf;
805 | }
806 |
807 | .HistoryCard {
808 | width: 100%;
809 | background: #fff;
810 | /*box-shadow: 0 3px 3px 0 rgba(0,0,0,0.14), 0 1px 7px 0 rgba(0,0,0,0.12), 0 3px 1px -1px rgba(0,0,0,0.2);*/
811 | margin-top: 20px;
812 | box-shadow: 0px 1px 1px 1px #c7c7c7;
813 | border-radius: 4px;
814 | }
815 |
816 | .HistoryCardContainer {
817 | width: 100%;
818 | }
819 |
820 | .HistoryCardContainer li {
821 | width: 100%;
822 | height: 35px;
823 | line-height: 25px;
824 | margin-bottom: 2px;
825 | padding: 5px;
826 | }
827 |
828 | .HistoryCardContainer li:hover {
829 | background: #eee;
830 | cursor: pointer;
831 | }
832 |
833 | .HistoryCardContainer li * {
834 | float: left;
835 | }
836 |
837 | .HistoryCardContainer li span {
838 | width: 93px;
839 | font-size: 12px;
840 | color: #7f7e7e;
841 | -moz-user-select: none;
842 | -webkit-user-select: none;
843 | -ms-user-select: none;
844 | -khtml-user-select: none;
845 | user-select: none;
846 | }
847 |
848 | .HistoryCardContainer li div {
849 | width: calc(100% - 120px);
850 | height: 100%;
851 | font-size: 13px;
852 | }
853 |
854 | .HistoryCardContainer li img {
855 | width: 15px;
856 | margin: 5px;
857 | }
858 |
859 | .HistoryCardContainer li p {
860 | height: 25px;
861 | width: 200px;
862 | overflow: hidden;
863 | text-overflow: ellipsis;
864 | white-space: nowrap;
865 | }
866 |
867 | .HistoryCardHead {
868 | width: 100%;
869 | font-weight: bold;
870 | font-size: 18px;
871 | padding: 5px;
872 | border-bottom: 1px solid #eee;
873 | line-height: 40px;
874 | -moz-user-select: none;
875 | -webkit-user-select: none;
876 | -ms-user-select: none;
877 | -khtml-user-select: none;
878 | user-select: none;
879 | }
880 |
881 | .history_body span {
882 | padding-right: 20px;
883 | overflow: hidden;
884 | text-overflow: ellipsis;
885 | width: 180px;
886 | }
887 |
888 | .history_body p {
889 | width: 270px;
890 | height: 20px;
891 | padding-right: 20px;
892 | overflow: hidden;
893 | text-overflow: ellipsis;
894 | }
895 |
896 | .history_body {
897 | display: inline-flex;
898 | margin-bottom: 10px;
899 | overflow: hidden;
900 | text-overflow: ellipsis;
901 | }
902 |
903 |
904 | /* 反馈样式 */
905 |
906 | .FeedBackMain * {
907 | box-sizing: border-box;
908 | }
909 |
910 | .FeedBackMain {
911 | width: 100%;
912 | height: 100%;
913 | -moz-user-select: none;
914 | -webkit-user-select: none;
915 | -ms-user-select: none;
916 | -khtml-user-select: none;
917 | user-select: none;
918 | }
919 |
920 | .FeedBackHead {
921 | width: 100%;
922 | height: 55px;
923 | border-bottom: 2px solid #38f;
924 | }
925 |
926 | .FeedBackHead img {
927 | float: left;
928 | width: 30px;
929 | margin: 11px;
930 | }
931 |
932 | .FeedBackHead p {
933 | line-height: 55px;
934 | font-size: 16px;
935 | }
936 |
937 | .FeedBackContainer {
938 | width: 100%;
939 | padding: 10px;
940 | }
941 |
942 | .FeedBackContainer input,
943 | .FeedBackContainer textarea {
944 | width: 100%;
945 | border: 1px solid #eee;
946 | height: 35px;
947 | border-radius: 3px;
948 | margin-bottom: 10px;
949 | padding: 4px;
950 | resize: none;
951 | }
952 |
953 | .FeedBackContainer textarea {
954 | height: 150px!important;
955 | }
956 |
957 | .FeedBackContainer input:focus,
958 | .FeedBackContainer textarea:focus {
959 | outline: none;
960 | border: 1px solid #38f;
961 | }
962 |
963 | .FeedBackContainer span {
964 | float: left;
965 | color: #e85151;
966 | font-size: 14px;
967 | margin-top: 10px;
968 | text-indent: 10px;
969 | }
970 |
971 | .FeedBackContainer button {
972 | float: right;
973 | padding: 0 10px;
974 | height: 35px;
975 | background: #38f;
976 | color: #fff;
977 | border: 1px solid #eee;
978 | border-radius: 3px;
979 | overflow: hidden;
980 | }
981 |
982 | .HistoryBottom {
983 | width: 100%;
984 | height: 55px;
985 | transition: all .3s;
986 | position: fixed;
987 | background: #0b7aeb;
988 | bottom: -55px;
989 | }
990 |
991 | .HistoryBottomContent {
992 | width: 700px;
993 | height: auto;
994 | margin: auto;
995 | color: #ffffff;
996 | }
997 |
998 | .Historycount {
999 | width: auto;
1000 | float: left;
1001 | padding: 16px;
1002 | font-size: 17px;
1003 | z-index: 100;
1004 | }
1005 |
1006 | .HistoryPick {
1007 | width: auto;
1008 | float: right;
1009 | }
1010 |
1011 | .HistoryPick div {
1012 | float: left;
1013 | padding: 16px;
1014 | font-size: 17px;
1015 | z-index: 100;
1016 | cursor: pointer;
1017 | }
1018 |
1019 | #qingchu>div {
1020 | width: 35px;
1021 | height: 20px;
1022 | font-size: 12px;
1023 | float: right;
1024 | text-align: center;
1025 | line-height: 20px;
1026 | border: 1px solid #ccc;
1027 | border-radius: 5px;
1028 | margin: 10px 5px 5px 5px;
1029 | transition: all .3s;
1030 | opacity: 0;
1031 | cursor: pointer;
1032 | }
1033 |
1034 | .item {
1035 | /*z-index: 9999;*/
1036 | }
1037 |
1038 | .Historyinput {
1039 | margin-top: 7px;
1040 | -webkit-app-region: no-drag;
1041 | margin-right: 4px;
1042 | }
1043 |
1044 |
1045 | /*加载提示*/
1046 |
1047 | .BrowerTips {
1048 | left: 0px;
1049 | bottom: 0px;
1050 | float: left;
1051 | position: absolute;
1052 | max-width: 30%;
1053 | height: 30px;
1054 | line-height: 30px;
1055 | z-index: 2;
1056 | font-size: 12px;
1057 | box-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 0 1px rgba(0, 0, 0, .2);
1058 | word-wrap: normal;
1059 | background: #fff;
1060 | text-overflow: ellipsis;
1061 | word-spacing: normal;
1062 | word-break: break-all;
1063 | -webkit-transition: all .35s;
1064 | -moz-transition: all .35s;
1065 | -o-transition: all .35s;
1066 | -moz-user-select: none;
1067 | -webkit-user-select: none;
1068 | -ms-user-select: none;
1069 | -khtml-user-select: none;
1070 | user-select: none;
1071 | }
1072 |
1073 |
1074 | /*关于我们*/
1075 |
1076 | .FeedBackContainer p {
1077 | padding: 10px;
1078 | font-size: 14px;
1079 | font-weight: bold;
1080 | }
1081 |
1082 | .FeedBackContainer p span {
1083 | float: unset;
1084 | }
1085 |
1086 |
1087 | /* 首页end */
1088 |
1089 | .column.over {
1090 | border: 1px dashed #000;
1091 | }
1092 |
1093 | .column {
1094 | cursor: move;
1095 | }
1096 |
1097 | .animated {
1098 | -webkit-animation-duration: .35s;
1099 | animation-duration: .35s;
1100 | -webkit-animation-fill-mode: both;
1101 | animation-fill-mode: both
1102 | }
1103 |
1104 | .animated.infinite {
1105 | -webkit-animation-iteration-count: infinite;
1106 | animation-iteration-count: infinite
1107 | }
1108 |
1109 | @-webkit-keyframes fadeIn {
1110 | from {
1111 | opacity: 0
1112 | }
1113 | to {
1114 | opacity: 1
1115 | }
1116 | }
1117 |
1118 | @keyframes fadeIn {
1119 | from {
1120 | opacity: 0
1121 | }
1122 | to {
1123 | opacity: 1
1124 | }
1125 | }
1126 |
1127 | .fadeIn {
1128 | -webkit-animation-name: fadeIn;
1129 | animation-name: fadeIn
1130 | }
1131 |
1132 | @font-face {
1133 | font-family: 'fontello';
1134 | src: url('../font/fontello.eot?70736739');
1135 | src: url('../font/fontello.eot?70736739#iefix') format('embedded-opentype'), url('../font/fontello.woff?70736739') format('woff'), url('../font/fontello.ttf?70736739') format('truetype'), url('../font/fontello.svg?70736739#fontello') format('svg');
1136 | font-weight: normal;
1137 | font-style: normal;
1138 | }
1139 |
1140 | [class^="icon-"],
1141 | [class*=" icon-"] {
1142 | display: inline-block;
1143 | font: normal normal normal 14px/1 fontello, Microsoft YaHei;
1144 | font-size: inherit;
1145 | text-rendering: auto;
1146 | -webkit-font-smoothing: antialiased;
1147 | -moz-osx-font-smoothing: grayscale;
1148 | }
1149 |
1150 | .icon-left:before {
1151 | content: '\e800';
1152 | }
1153 |
1154 |
1155 | /* '' */
1156 |
1157 | .icon-right:before {
1158 | content: '\e801';
1159 | }
1160 |
1161 |
1162 | /* '' */
1163 |
1164 | .icon-cancel:before {
1165 | content: '\e802';
1166 | }
1167 |
1168 |
1169 | /* '' */
1170 |
1171 | .icon-minus:before {
1172 | content: '\e803';
1173 | }
1174 |
1175 |
1176 | /* '' */
1177 |
1178 | .icon-menu:before {
1179 | content: '\e804';
1180 | }
1181 |
1182 |
1183 | /* '' */
1184 |
1185 | .icon-play-circled2:before {
1186 | content: '\e805';
1187 | }
1188 |
1189 |
1190 | /* '' */
1191 |
1192 | .icon-play:before {
1193 | content: '\e806';
1194 | }
1195 |
1196 |
1197 | /* '' */
1198 |
1199 | .icon-lock:before {
1200 | content: '\e807';
1201 | }
1202 |
1203 |
1204 | /* '' */
1205 |
1206 | .icon-plus:before {
1207 | content: '\e808';
1208 | }
1209 |
1210 |
1211 | /* '' */
1212 |
1213 | .icon-cog:before {
1214 | content: '\e809';
1215 | }
1216 |
1217 |
1218 | /* '' */
1219 |
1220 | .icon-cw:before {
1221 | content: '\e80a';
1222 | }
1223 |
1224 |
1225 | /* '' */
1226 |
1227 | .icon-times:before {
1228 | content: '\ebc4';
1229 | }
1230 |
1231 |
1232 | /* '' */
1233 |
1234 | .icon-window-maximize:before {
1235 | content: '\ec0f';
1236 | }
1237 |
1238 |
1239 | /* '' */
1240 |
1241 | .icon-window-minimize:before {
1242 | content: '\ec10';
1243 | }
1244 |
1245 |
1246 | /* '' */
1247 |
1248 | .icon-window-restore:before {
1249 | content: '\ec11';
1250 | }
1251 |
1252 |
1253 | /* '' */
1254 |
1255 | .icon-angle-up:before {
1256 | content: '\f106';
1257 | }
1258 |
1259 |
1260 | /* '' */
1261 |
1262 | .icon-angle-down:before {
1263 | content: '\f107';
1264 | }
1265 |
1266 |
1267 | /* '' */
1268 |
1269 | .icon-ellipsis-vert:before {
1270 | content: '\f142';
1271 | }
1272 |
1273 |
1274 | /* '' */
1275 |
1276 |
1277 | /*滚动条*/
1278 |
1279 | *::-webkit-scrollbar {
1280 | width: 7px;
1281 | height: 7px;
1282 | background: none;
1283 | }
1284 |
1285 | *::-webkit-scrollbar-button {
1286 | display: none;
1287 | }
1288 |
1289 | *::-webkit-scrollbar-track {
1290 | background: none;
1291 | }
1292 |
1293 | *::-webkit-scrollbar-track-piece {
1294 | display: none;
1295 | }
1296 |
1297 | *::-webkit-scrollbar-thumb {
1298 | background: rgba(0, 0, 0, 0.3);
1299 | position: absolute;
1300 | width: 3px;
1301 | right: 0;
1302 | top: 0;
1303 | bottom: 0;
1304 | visibility: hidden\9;
1305 | /* Target only IE7 and IE8 with this hack */
1306 | opacity: .01;
1307 | -webkit-transition: .2s;
1308 | -moz-transition: .2s;
1309 | -o-transition: .2s;
1310 | transition: .2s;
1311 | -moz-border-radius: 3px;
1312 | -webkit-border-radius: 3px;
1313 | border-radius: 3px;
1314 | }
1315 |
1316 | *::-webkit-scrollbar-thumb:active,
1317 | *::-webkit-scrollbar-thumb:hover {
1318 | background: rgba(0, 0, 0, .50);
1319 | }
1320 |
1321 | *::-webkit-scrollbar-corner {
1322 | display: none;
1323 | }
1324 |
1325 | *::-webkit-scrollbar-resizer {
1326 | display: none;
1327 | }
--------------------------------------------------------------------------------
/public/font/fontello.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/font/fontello.eot
--------------------------------------------------------------------------------
/public/font/fontello.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/public/font/fontello.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/font/fontello.ttf
--------------------------------------------------------------------------------
/public/font/fontello.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/font/fontello.woff
--------------------------------------------------------------------------------
/public/font/fontello.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/font/fontello.woff2
--------------------------------------------------------------------------------
/public/font/simsun.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/font/simsun.ttf
--------------------------------------------------------------------------------
/public/img/Code/Array数据类型.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/Code/Array数据类型.jpg
--------------------------------------------------------------------------------
/public/img/Code/字符串处理函数.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/Code/字符串处理函数.jpg
--------------------------------------------------------------------------------
/public/img/Code/数字处理函数.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/Code/数字处理函数.jpg
--------------------------------------------------------------------------------
/public/img/NetWorkData/VMware-esxi安装.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/NetWorkData/VMware-esxi安装.jpg
--------------------------------------------------------------------------------
/public/img/NetWorkData/VMware-esxi配置.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/NetWorkData/VMware-esxi配置.jpg
--------------------------------------------------------------------------------
/public/img/NetWorkData/制作磁盘阵列.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/NetWorkData/制作磁盘阵列.jpg
--------------------------------------------------------------------------------
/public/img/ProductData/AI制作绘制icon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/ProductData/AI制作绘制icon.jpg
--------------------------------------------------------------------------------
/public/img/ProductData/Axure原型图策划.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/ProductData/Axure原型图策划.jpg
--------------------------------------------------------------------------------
/public/img/ProductData/UI设计图绘制.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/ProductData/UI设计图绘制.jpg
--------------------------------------------------------------------------------
/public/img/VideoTeach/VideoTeach1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/VideoTeach/VideoTeach1.png
--------------------------------------------------------------------------------
/public/img/VideoTeach/VideoTeach2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/VideoTeach/VideoTeach2.png
--------------------------------------------------------------------------------
/public/img/VideoTeach/VideoTeach3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/VideoTeach/VideoTeach3.png
--------------------------------------------------------------------------------
/public/img/advert/advert1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/advert/advert1.jpg
--------------------------------------------------------------------------------
/public/img/advert/advert2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/advert/advert2.jpg
--------------------------------------------------------------------------------
/public/img/advert/advert3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/advert/advert3.jpg
--------------------------------------------------------------------------------
/public/img/advert/advert4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/advert/advert4.jpg
--------------------------------------------------------------------------------
/public/img/head.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/head.png
--------------------------------------------------------------------------------
/public/img/loading.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/loading.png
--------------------------------------------------------------------------------
/public/img/tray/app.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/tray/app.icns
--------------------------------------------------------------------------------
/public/img/tray/app.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/tray/app.ico
--------------------------------------------------------------------------------
/public/img/tray/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/tray/logo.png
--------------------------------------------------------------------------------
/public/img/tray/logo1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/public/img/tray/logo1.png
--------------------------------------------------------------------------------
/public/js/CampusInfo-data.js:
--------------------------------------------------------------------------------
1 | Namespace.register('CampusInfo');
2 | /*广告数组*/
3 | //script是跳转链接
4 | //img是广告图
5 | CampusInfo.AdvertData = [
6 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3D01CA%2FOv7j1ocQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMZVDjYODMa5D5x%2BIUlGKNpVpkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTBmf7LSR66ajB2BnU%2FAw9MfB0z8qlrv%2BjxgxdTc00KD8%3D", "img": "public/img/advert/advert1.jpg"},
7 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DMylYQi2EJA8cQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMaTontUilVOD8sviUM61dt1pkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUAIFqMlk%2BHscgie8iDqaHto6xAa%2FwPGIEAmtCcqzniGwRKzY8kJSKyJV", "img":"public/img/advert/advert2.jpg"},
8 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DyJVT04f95dwcQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMRBEihx9fnu7MMgx22UI05ZpkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUAK2ZesAkYM2UrHfv3%2BBYcPW%2FknKiHyNnnwFqMlk%2BHscgsxly4mDws6agwasosWKSNIq0pojkFrdmA%3D%3D", "img": "public/img/advert/advert3.jpg"},
9 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DWBOlTdx8NOYcQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMQ4UZ0fdGU398sviUM61dt1pkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUALIHVwQNFS4sCT8IooNW8SzyELuT3V6aIyiZ%2BQMlGz6FQ%3D%3D", "img": "public/img/advert/advert4.jpg"},
10 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3D01CA%2FOv7j1ocQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMZVDjYODMa5D5x%2BIUlGKNpVpkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTBmf7LSR66ajB2BnU%2FAw9MfB0z8qlrv%2BjxgxdTc00KD8%3D", "img": "public/img/advert/advert1.jpg"},
11 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DMylYQi2EJA8cQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMaTontUilVOD8sviUM61dt1pkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUAIFqMlk%2BHscgie8iDqaHto6xAa%2FwPGIEAmtCcqzniGwRKzY8kJSKyJV", "img":"public/img/advert/advert2.jpg"},
12 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DyJVT04f95dwcQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMRBEihx9fnu7MMgx22UI05ZpkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUAK2ZesAkYM2UrHfv3%2BBYcPW%2FknKiHyNnnwFqMlk%2BHscgsxly4mDws6agwasosWKSNIq0pojkFrdmA%3D%3D", "img": "public/img/advert/advert3.jpg"},
13 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DWBOlTdx8NOYcQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMQ4UZ0fdGU398sviUM61dt1pkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUALIHVwQNFS4sCT8IooNW8SzyELuT3V6aIyiZ%2BQMlGz6FQ%3D%3D", "img": "public/img/advert/advert4.jpg"},
14 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3D01CA%2FOv7j1ocQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMZVDjYODMa5D5x%2BIUlGKNpVpkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTBmf7LSR66ajB2BnU%2FAw9MfB0z8qlrv%2BjxgxdTc00KD8%3D", "img": "public/img/advert/advert1.jpg"},
15 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DMylYQi2EJA8cQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMaTontUilVOD8sviUM61dt1pkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUAIFqMlk%2BHscgie8iDqaHto6xAa%2FwPGIEAmtCcqzniGwRKzY8kJSKyJV", "img":"public/img/advert/advert2.jpg"},
16 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DyJVT04f95dwcQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMRBEihx9fnu7MMgx22UI05ZpkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUAK2ZesAkYM2UrHfv3%2BBYcPW%2FknKiHyNnnwFqMlk%2BHscgsxly4mDws6agwasosWKSNIq0pojkFrdmA%3D%3D", "img": "public/img/advert/advert3.jpg"},
17 | {"script": "https://s.click.taobao.com/t?e=m%3D2%26s%3DWBOlTdx8NOYcQipKwQzePCperVdZeJviK7Vc7tFgwiFRAdhuF14FMQ4UZ0fdGU398sviUM61dt1pkZoesg6H2DLkWy%2FWNDI6qDkzyuS4OqpRZq0jLDZK045N7u7NTPnpvgfyVVUAbkzCbAGjvJeFYhvzeiceWLrTM7kxpdONUALIHVwQNFS4sCT8IooNW8SzyELuT3V6aIyiZ%2BQMlGz6FQ%3D%3D", "img": "public/img/advert/advert4.jpg"},
18 | ];
19 | /*视频教学*/
20 | //UserFilesName是标题
21 | //UserFilesServerName是显示图片
22 | //Action_url是跳转链接
23 | CampusInfo.VideoTeach=[
24 | {"UserFilesName":"有思课堂-JavaScript第一讲变量循环函数及div","UserFilesServerName":"public/img/VideoTeach/VideoTeach1.png","Action_url":"https://v.qq.com/x/page/i0510ky3tjm.html"},
25 | {"UserFilesName":"有思课堂-JavaScript第二讲判断循环调试基础知识","UserFilesServerName":"public/img/VideoTeach/VideoTeach2.png","Action_url":"https://v.qq.com/x/page/p0510lztld2.html"},
26 | {"UserFilesName":"有思课堂-JavaScript第三讲 游戏布局","UserFilesServerName":"public/img/VideoTeach/VideoTeach3.png","Action_url":"https://v.qq.com/x/page/f05086f8xa6.html"},
27 | {"UserFilesName":"有思课堂-JavaScript第四讲元素之间的关系","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/p0508biafx2.html"},
28 | {"UserFilesName":"有思课堂-JavaScript第五讲_双循环的讲解","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/o0511smspoq.html"},
29 | {"UserFilesName":"有思课堂-JavaScript第六讲 二维数组","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/h05115m98xe.html"},
30 | {"UserFilesName":"有思课堂-第八讲 错误调试以及添加人物","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/x05149dlpke.html"},
31 | {"UserFilesName":"有思课堂-JavaScript第九讲 键盘事件","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/z0518f8nbf7.html"},
32 | {"UserFilesName":"有思课堂-JavaScript第十讲人物与数组关系及行走","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/x0518x0r465.html"},
33 | {"UserFilesName":"有思课堂-JavaScript第十一讲 二维数组与调试","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/t0521aro02e.html"},
34 | {"UserFilesName":"有思课堂JavaScript第十二讲 代码格式及添加箱子","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/d05214r4jcy.html"},
35 | {"UserFilesName":"有思课堂-第十三讲 代码格式化及监视人物行走的坐标","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/c05289f716s.html"},
36 | {"UserFilesName":"有思课堂-第十四讲 人物向下行走及错误处理","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/g0527q5r6kj.html"},
37 | {"UserFilesName":"有思课堂-第十五讲 上下左右四个方向推动箱子 ","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/v0531apqn4d.html"},
38 | {"UserFilesName":"有思课堂-第十六讲 把箱子推到出口及函数的概念","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/s0531begsm2.html"},
39 | {"UserFilesName":"有思课堂-第十七讲 通关界面的制作及调试","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/i0539kf03ws.html"},
40 | {"UserFilesName":"有思课堂-第十八讲 下一关及重玩本关按钮制作","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/n0539r6ju7h.html"},
41 | {"UserFilesName":"有思课堂-第十九讲 三维数组,把游戏扩大到两关","UserFilesServerName":null,"Action_url":"https://v.qq.com/x/page/i0544jghc03.html"},
42 | ];
43 | /*程序教学*/
44 | //UserFilesName是标题
45 | //UserFilesServerName是显示图片
46 | //Action_url是跳转链接
47 | CampusInfo.program=[
48 | {"UserFilesName":"js字符串处理函数讲解","UserFilesServerName":"public/img/Code/字符串处理函数.jpg","Action_url":"http://api.1473.cn/uform/String/index.aspx"},
49 | {"UserFilesName":"数字处理函数过程讲解","UserFilesServerName":"public/img/Code/数字处理函数.jpg","Action_url":"http://api.1473.cn/uform/Number/index.aspx"},
50 | {"UserFilesName":"Array数组函数数据类型讲解","UserFilesServerName":"public/img/Code/Array数据类型.jpg","Action_url":"http://api.1473.cn/uform/Array/index.aspx"},
51 | {"UserFilesName":"uform框架-Guid数据类型补全课程讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/guid.aspx"},
52 | {"UserFilesName":"uform框架-Date数据类型","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/Date/index.aspx"},
53 | {"UserFilesName":"uform框架-json处理类","UserFilesServerName":null,"Action_url":"http://api.1473.cn/Uform/Json/index.aspx"},
54 | {"UserFilesName":"uform框架-ajax类U.A","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/6%E3%80%81ajax%E7%B1%BB_U.A.aspx"},
55 | {"UserFilesName":"uform框架-跨域方法U.UF.CD","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/7%E3%80%81%E8%B7%A8%E5%9F%9F%E6%96%B9%E6%B3%95_U.CD.aspx"},
56 | {"UserFilesName":"客户端信息U.UF.CI解析","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/8%E3%80%81%E5%AE%A2%E6%88%B7%E7%AB%AF%E4%BF%A1%E6%81%AF_U.CI.aspx"},
57 | {"UserFilesName":"兼容函数列表讲解说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/Compatible/index.aspx"},
58 | {"UserFilesName":"预加载处理区域讲解说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/DynamicLoad/index.aspx"},
59 | {"UserFilesName":"Cookie缓存处理说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/Cookie/index.aspx"},
60 | {"UserFilesName":"uform框架-辅助函数U.Util讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/utility/11%E3%80%81%E8%BE%85%E5%8A%A9%E5%87%BD%E6%95%B0_U.Util.aspx"},
61 | {"UserFilesName":"前进后退接口函数U.UF.N","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/13%E3%80%81%E5%89%8D%E8%BF%9B%E5%90%8E%E9%80%80%E6%8E%A5%E5%8F%A3%E5%87%BD%E6%95%B0_U.AFB.aspx"},
62 | {"UserFilesName":"UI界面控件简介与说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/uformcontrols/index.aspx"},
63 | {"UserFilesName":"Confirm窗体的调用U.UI.Confirm","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/uformcontrols/ModalForm.aspx"},
64 | {"UserFilesName":"图片控件U.UF.IMG","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/pccontrols/image.aspx"},
65 | {"UserFilesName":"图片控件U.MD.UI.Picture","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/pccontrols/picture.aspx"},
66 | {"UserFilesName":"手机端UI控件简介说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/telephoecontrols/index.aspx"},
67 | {"UserFilesName":"RadioList列表说明解析","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/telephoecontrols/radiolist.aspx"},
68 | {"UserFilesName":"UForm登录注册中文调用文档API","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/application/1%E3%80%81UForm%E7%99%BB%E5%BD%95%E6%B3%A8%E5%86%8C%E4%B8%AD%E6%96%87%E8%B0%83%E7%94%A8%E6%96%87%E6%A1%A3api.aspx"},
69 | {"UserFilesName":"1473好友处理模块接口使用说明文档","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/application/7%E3%80%81%E5%A5%BD%E5%8F%8B%E5%A4%84%E7%90%86%E6%A8%A1%E5%9D%97%E6%8E%A5%E5%8F%A3.aspx"},
70 | {"UserFilesName":"office处理模块接口调用","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/8%E3%80%81office%E5%A4%84%E7%90%86%E6%A8%A1%E5%9D%97%E6%8E%A5%E5%8F%A3%E8%B0%83%E7%94%A8.aspx"},
71 | {"UserFilesName":"图片拖拽兼容ie8的方法","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/other/ImageSelect.aspx"},
72 | {"UserFilesName":"从编程框架看系统结构","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/1%E3%80%81%E4%BB%8E%E7%BC%96%E7%A8%8B%E6%A1%86%E6%9E%B6%E7%9C%8B%E7%B3%BB%E7%BB%9F.aspx"},
73 | {"UserFilesName":"安装Internet服务器(IIS)管理器","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/ProjectConfiguration/2%E3%80%81%E5%AE%89%E8%A3%85Internet%E6%9C%8D%E5%8A%A1%E5%99%A8(IIS)%E7%AE%A1%E7%90%86%E5%99%A8.aspx"},
74 | {"UserFilesName":"Cookie增删查改讲解说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/12%E3%80%81Cookie.aspx"},
75 | {"UserFilesName":"修改电脑用户为Administrator","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/ProjectConfiguration/7%E3%80%81%E4%BF%AE%E6%94%B9%E7%94%B5%E8%84%91%E7%94%A8%E6%88%B7%E4%B8%BAAdministrator.aspx"},
76 | {"UserFilesName":"从应用和系统看操作系统构成","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/2%E3%80%81%E4%BB%8E%E5%BA%94%E7%94%A8%E5%92%8C%E7%B3%BB%E7%BB%9F%E7%9C%8B%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E6%9E%84%E6%88%90.aspx"},
77 | {"UserFilesName":"理解整个系统需要额外掌握的知识","UserFilesServerName":null,"Action_url":"http://api.1473.cn/uform/4%E3%80%81%E7%90%86%E8%A7%A3%E6%95%B4%E4%B8%AA%E7%B3%BB%E7%BB%9F%E9%9C%80%E8%A6%81%E9%A2%9D%E5%A4%96%E6%8E%8C%E6%8F%A1%E7%9A%84%E7%9F%A5%E8%AF%86.aspx"}
78 | ];
79 | /*产品教学*/
80 | //UserFilesName是标题
81 | //UserFilesServerName是显示图片
82 | //Action_url是跳转链接
83 | CampusInfo.ProductData=[
84 | {"UserFilesName":"Axure原型图策划解析","UserFilesServerName":"public/img/ProductData/Axure原型图策划.jpg","Action_url":"http://api.1473.cn/product/Learning/Prototypingplanning.aspx"},
85 | {"UserFilesName":"UI界面设计图绘制说明","UserFilesServerName":"public/img/ProductData/UI设计图绘制.jpg","Action_url":"http://api.1473.cn/product/Learning/DrawingofUIdesigndiagram.aspx"},
86 | {"UserFilesName":"使用AI绘制icon图标讲解","UserFilesServerName":"public/img/ProductData/AI制作绘制icon.jpg","Action_url":"http://api.1473.cn/product/Learning/AImakingAndDrawingicon.aspx"},
87 | {"UserFilesName":"有思俱乐部美工部设计作品集汇总","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/DesignWorksset.aspx"},
88 | {"UserFilesName":"Axure原型认识与制作讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/cloud/VMware_cloud.aspx"},
89 | {"UserFilesName":"界面UI美工设计速成说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/InterfaceAestheticDesignSpeed.aspx"},
90 | {"UserFilesName":"PS基础工具使用讲解说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/PSBasic.aspx"},
91 | {"UserFilesName":"淘宝首页美工界面临摹(一)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/WebCopyTB1.aspx"},
92 | {"UserFilesName":"淘宝首页美工界面临摹(二)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/WebCopyTB2.aspx"},
93 | {"UserFilesName":"网页配色速成讲解文档","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/WebPageColor.aspx"},
94 | {"UserFilesName":"临摹美工界面-移动端(一)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/MobileCopyWeb1.aspx"},
95 | {"UserFilesName":"临摹美工界面-移动端(二)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/MobileCopyWeb2.aspx"},
96 | {"UserFilesName":"有思俱乐部产品Axure设计与详解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/ProductAxureDesignAndDetailedSolution.aspx"},
97 | {"UserFilesName":"美工运用AI临摹icon","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/AICopyIcon.aspx"},
98 | {"UserFilesName":"产品交互设计能力讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/ProductInteractionDesign.aspx"},
99 | {"UserFilesName":"产品经理能力模型解析","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/ProductManagerCapabilityModel.aspx"},
100 | {"UserFilesName":"临摹网页界面讲解说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/CopyWeb.aspx"},
101 | {"UserFilesName":"产品经理竞品分析文档","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/AnalysisOfProductCompetition.aspx"},
102 | {"UserFilesName":"HTML基础课程教学(一)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/WebBasic1.aspx"},
103 | {"UserFilesName":"产品用户手册范本编写","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/UserProduct.aspx"},
104 | {"UserFilesName":"HTML基础课程教学(二)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/WebBasic2.aspx"},
105 | {"UserFilesName":"产品项目计划书编写要点及说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/ProductProjectPlan.aspx"},
106 | {"UserFilesName":"AE动画制作UI界面解析说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/AECartoon.aspx"},
107 | {"UserFilesName":"数据解析优化产品讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Courses/DataOptimizationProducts.aspx"},
108 | {"UserFilesName":"项目计划书(含目的、意义)","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/ProjectpLanningpaper.aspx"},
109 | {"UserFilesName":"测试用例文档制作说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/TestcaseProduction.aspx"},
110 | {"UserFilesName":"用户使用说明书编写规范","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/UsersInstructions.aspx"},
111 | {"UserFilesName":"利用html制作网页说明讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/HtmlProduction.aspx"},
112 | {"UserFilesName":"网站制作技巧全面讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/WebmakingAndDrawing.aspx"},
113 | {"UserFilesName":"Axure网站原型策划说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/WebsitePrototype.aspx"},
114 | {"UserFilesName":"美工海报宣传制作规范说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/product/Learning/PosterPublicity.aspx"}
115 | ];
116 | /*网络教学*/
117 | //UserFilesName是标题
118 | //UserFilesServerName是显示图片
119 | //Action_url是跳转链接
120 | CampusInfo.NetWorkData=[
121 | {"UserFilesName":"制作磁盘阵列课程说明解析","UserFilesServerName":"public/img/NetWorkData/制作磁盘阵列.jpg","Action_url":"http://api.1473.cn/network/raid/index.aspx"},
122 | { "UserFilesName":"VMware esxi安装步骤说明", "UserFilesServerName": "public/img/NetWorkData/VMware-esxi安装.jpg", "Action_url": "http://api.1473.cn/network/esxi/esxi_install.aspx" },
123 | {"UserFilesName":"VMware esxi配置步骤说明","UserFilesServerName":"public/img/NetWorkData/VMware-esxi配置.jpg","Action_url":"http://api.1473.cn/network/esxi/esxi_config.aspx"},
124 | {"UserFilesName":"window上登录VMware esxi说明解析","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/esxi/login_esxi.aspx"},
125 | {"UserFilesName":"华为虚拟化系统安装与配置","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/install_OS/install_huawei.aspx"},
126 | {"UserFilesName":"Ubuntu操作系统安装教程","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/UbuntuInstall/index.aspx"},
127 | {"UserFilesName":"PHP集成开发环境安装说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/php/index.aspx"},
128 | {"UserFilesName":"JAVA环境配置步骤说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/java/index.aspx"},
129 | {"UserFilesName":"安装mysql数据库说明解析","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/mysql/index.aspx"},
130 | {"UserFilesName":"mongodb数据库配置说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/mongodb/index.aspx"},
131 | {"UserFilesName":"在Ubuntu里搭建DNS讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/DNS/index.aspx"},
132 | {"UserFilesName":"安装DHCP网络协议服务讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/DHCP/index.aspx"},
133 | {"UserFilesName":"window上安装nginx反向代理服务讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/nginx/index.aspx"},
134 | {"UserFilesName":"安装moosefs分布式服务讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/moosefs/index.aspx"},
135 | {"UserFilesName":"mysql-cluster配置说明文","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/mysql/cluster.aspx"},
136 | {"UserFilesName":"如何配置dmz安装说明讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/dmz/dmz.aspx"},
137 | {"UserFilesName":"rsync传输服务配置同步","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/rsync/rsync.aspx"},
138 | {"UserFilesName":"创建虚拟机并安装操作系统","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/ftp/ftp.aspx"},
139 | {"UserFilesName":"如何配置FTP协议服务说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/ftp/ftp.aspx"},
140 | {"UserFilesName":"如何配置SVN服务解析说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/svn/svn.aspx"},
141 | {"UserFilesName":"DHCP主机配置协议安装说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/windows_config/DHCP.aspx"},
142 | {"UserFilesName":"window上DNS域名系统安装步骤讲解","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/windows_config/DNS.aspx"},
143 | {"UserFilesName":"配置FTP服务步骤说明文档","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/ftp/ftp_install.aspx"},
144 | {"UserFilesName":"配置IIS服务安装说明文档","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/iis/iis.aspx"},
145 | {"UserFilesName":"配置IIS(Windows7)说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/iis/iis_windows7.aspx"},
146 | {"UserFilesName":"路由器交换基础解析说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/router_switch/switch.aspx"},
147 | {"UserFilesName":"路由器路由基础解析说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/router_switch/router.aspx"},
148 | {"UserFilesName":"VMware桌面云配置教学","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/cloud/VMware_cloud.aspx"},
149 | {"UserFilesName":"华为云桌面配置教学说明","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/cloud/huawei_cloud.aspx"},
150 | {"UserFilesName":"网络部门网络总图查看","UserFilesServerName":null,"Action_url":"http://api.1473.cn/network/cloud/VMware_cloud.aspx"}
151 | ];
152 | /*毕业季数据*/
153 | //UserFilesName是标题
154 | //UserFilesServerName是显示图片
155 | //Action_url是跳转链接
156 | CampusInfo.graduationData=[
157 | {"UserFilesName":"设计系12营销G5毕业照2","UserFilesServerName":"http://fs.1473.cn/af594976-b0fd-47e9-b65c-89b591b577d8.jpg","Action_url":"http://fs.1473.cn/af594976-b0fd-47e9-b65c-89b591b577d8.jpg"},
158 | {"UserFilesName":"设计系12营销G5毕业照","UserFilesServerName":"http://fs.1473.cn/8db6512f-8e99-4d43-aabe-c13027e91465.jpg","Action_url":"http://fs.1473.cn/8db6512f-8e99-4d43-aabe-c13027e91465.jpg"},
159 | {"UserFilesName":"机电系14光电子G3毕业照3","UserFilesServerName":"http://fs.1473.cn/fc0f29dc-9933-42b6-86aa-1cba7c66c668.jpg","Action_url":"http://fs.1473.cn/fc0f29dc-9933-42b6-86aa-1cba7c66c668.jpg"},
160 | {"UserFilesName":"深圳技师学院机电系14光电子G3毕业照2","UserFilesServerName":"http://fs.1473.cn/5e89e6bd-46b6-447f-811f-3ca4568546a2.jpg","Action_url":"http://fs.1473.cn/5e89e6bd-46b6-447f-811f-3ca4568546a2.jpg"},
161 | {"UserFilesName":"机电系14光电子G3毕业照","UserFilesServerName":"http://fs.1473.cn/81ac6766-2ebd-431e-9020-ad7b1f17767d.jpg","Action_url":"http://fs.1473.cn/81ac6766-2ebd-431e-9020-ad7b1f17767d.jpg"},
162 | {"UserFilesName":"电信系12电子J4毕业照","UserFilesServerName":"http://fs.1473.cn/30bcd316-3b25-4850-b68c-0b158d9d2628.jpg","Action_url":"http://fs.1473.cn/30bcd316-3b25-4850-b68c-0b158d9d2628.jpg"},
163 | {"UserFilesName":"电信系11电子商务G5毕业照","UserFilesServerName":"http://fs.1473.cn/9999238c-d1cd-4275-89a8-042befceed8e.jpg","Action_url":"http://fs.1473.cn/9999238c-d1cd-4275-89a8-042befceed8e.jpg"},
164 | {"UserFilesName":"神秘系未知班毕业照","UserFilesServerName":"http://fs.1473.cn/2f769382-ecd1-4661-b6c8-5077d6f23955.jpg","Action_url":"http://fs.1473.cn/2f769382-ecd1-4661-b6c8-5077d6f23955.jpg"},
165 | {"UserFilesName":"神秘系未知班毕业照(2)","UserFilesServerName":"http://fs.1473.cn/7fd027cf-1b11-48f2-bbb3-5825a9c7b0b8.jpg","Action_url":"http://fs.1473.cn/7fd027cf-1b11-48f2-bbb3-5825a9c7b0b8.jpg"},
166 | {"UserFilesName":"设计系13高起营销毕业照","UserFilesServerName":"http://fs.1473.cn/16d44639-fef5-484b-aee9-18fa7d603f06.jpg","Action_url":"http://fs.1473.cn/16d44639-fef5-484b-aee9-18fa7d603f06.jpg"},
167 | {"UserFilesName":"设计系13高起营销毕业照","UserFilesServerName":"http://fs.1473.cn/517c9c1d-63b4-4c8d-bcba-7a76058c13ba.jpg","Action_url":"http://fs.1473.cn/517c9c1d-63b4-4c8d-bcba-7a76058c13ba.jpg"},
168 | {"UserFilesName":"设计13高起营销毕业照","UserFilesServerName":"http://fs.1473.cn/6ad8a083-a0ec-4e0b-b0c4-a791227c1497.jpg","Action_url":"http://fs.1473.cn/6ad8a083-a0ec-4e0b-b0c4-a791227c1497.jpg"},
169 | {"UserFilesName":"深圳技师学院汽车系12汽修G5毕业照","UserFilesServerName":"http://fs.1473.cn/9ea937ee-c294-42f5-9dc3-8d7c6707971f.jpg","Action_url":"http://fs.1473.cn/9ea937ee-c294-42f5-9dc3-8d7c6707971f.jpg"},
170 | {"UserFilesName":"汽车系12汽修G5毕业照","UserFilesServerName":"http://fs.1473.cn/855b8343-05d9-4213-9486-f790977ece84.jpg","Action_url":"http://fs.1473.cn/855b8343-05d9-4213-9486-f790977ece84.jpg"},
171 | {"UserFilesName":"生物系11生物毕业照","UserFilesServerName":"http://fs.1473.cn/831356f9-5737-4007-83b5-626a332f3984.jpg","Action_url":"http://fs.1473.cn/831356f9-5737-4007-83b5-626a332f3984.jpg"},
172 | {"UserFilesName":"生物系11生物G5毕业照","UserFilesServerName":"http://fs.1473.cn/d057c910-8bc1-4ffa-a9c5-4b2abda695e8.jpg","Action_url":"http://fs.1473.cn/d057c910-8bc1-4ffa-a9c5-4b2abda695e8.jpg"},
173 | {"UserFilesName":"生物系11生物G5毕业证","UserFilesServerName":"http://fs.1473.cn/a69a1072-3ac8-4d24-a838-62c01e308e79.jpg","Action_url":"http://fs.1473.cn/a69a1072-3ac8-4d24-a838-62c01e308e79.jpg"},
174 | {"UserFilesName":"珠宝系10首饰G5毕业照","UserFilesServerName":"http://fs.1473.cn/08ebaaa0-83e0-4297-af40-16fb9356992c.jpg","Action_url":"http://fs.1473.cn/08ebaaa0-83e0-4297-af40-16fb9356992c.jpg"},
175 | {"UserFilesName":"电信系11电商大合照","UserFilesServerName":"http://fs.1473.cn/9c3d8ed9-2b38-4e3c-bc7f-786b8ebe5cc4.jpg","Action_url":"http://fs.1473.cn/9c3d8ed9-2b38-4e3c-bc7f-786b8ebe5cc4.jpg"},
176 | {"UserFilesName":"电信系11电商G5毕业证","UserFilesServerName":"http://fs.1473.cn/0398407d-fcf6-48ef-8d93-bf5105079d97.jpg","Action_url":"http://fs.1473.cn/0398407d-fcf6-48ef-8d93-bf5105079d97.jpg"},
177 | {"UserFilesName":"电信系11电商G5毕业证","UserFilesServerName":"http://fs.1473.cn/ccbfb021-222c-4eb5-9200-beb3b3b189cc.jpg","Action_url":"http://fs.1473.cn/ccbfb021-222c-4eb5-9200-beb3b3b189cc.jpg"},
178 | {"UserFilesName":"深圳技师学院电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/3678b7c6-4cc7-4cba-af52-4837a0d53774.jpg","Action_url":"http://fs.1473.cn/3678b7c6-4cc7-4cba-af52-4837a0d53774.jpg"},
179 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/6aeea1fa-d9f7-443e-ba04-1f13b740c1d4.jpg","Action_url":"http://fs.1473.cn/6aeea1fa-d9f7-443e-ba04-1f13b740c1d4.jpg"},
180 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/fb708b96-db9c-4b3c-902d-f1f12e1aa789.jpg","Action_url":"http://fs.1473.cn/fb708b96-db9c-4b3c-902d-f1f12e1aa789.jpg"},
181 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/7959d613-e9f2-4910-90f2-e14cced72dce.jpg","Action_url":"http://fs.1473.cn/7959d613-e9f2-4910-90f2-e14cced72dce.jpg"},
182 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/00acd02c-b16f-467d-9a5f-1461cd425b2c.jpg","Action_url":"http://fs.1473.cn/00acd02c-b16f-467d-9a5f-1461cd425b2c.jpg"},
183 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/7444df51-8620-432c-a126-9e52ae5557b6.jpg","Action_url":"http://fs.1473.cn/7444df51-8620-432c-a126-9e52ae5557b6.jpg"},
184 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/e0f281b3-c79e-4259-91cb-98dd670d8808.jpg","Action_url":"http://fs.1473.cn/e0f281b3-c79e-4259-91cb-98dd670d8808.jpg"},
185 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/53b581b0-0a09-4426-a02e-cb6935ef3d67.jpg","Action_url":"http://fs.1473.cn/53b581b0-0a09-4426-a02e-cb6935ef3d67.jpg"},
186 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/d55c43ba-32b9-4a91-a14a-94745f4c10a1.jpg","Action_url":"http://fs.1473.cn/d55c43ba-32b9-4a91-a14a-94745f4c10a1.jpg"},
187 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/3678b7c6-4cc7-4cba-af52-4837a0d53774.jpg","Action_url":"http://fs.1473.cn/3678b7c6-4cc7-4cba-af52-4837a0d53774.jpg"},
188 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/9b8d7654-ef5a-4b5d-94c7-5dd75ead6ff2.jpg","Action_url":"http://fs.1473.cn/9b8d7654-ef5a-4b5d-94c7-5dd75ead6ff2.jpg"},
189 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/67a96c9c-08b1-4af7-8d35-2465eb7d9dd2.jpg","Action_url":"http://fs.1473.cn/67a96c9c-08b1-4af7-8d35-2465eb7d9dd2.jpg"},
190 | {"UserFilesName":"电信系11软件G5毕业照","UserFilesServerName":"http://fs.1473.cn/66480f98-1940-488b-9f0e-996f640b084e.jpg","Action_url":"http://fs.1473.cn/66480f98-1940-488b-9f0e-996f640b084e.jpg"}
191 | ];
192 | /*导航数组*/
193 | //name是导航名字
194 | //tag是导航标签
195 | //dataLength是中间数据板块有多少条数据4或者8
196 | //resource是数据资源,外网填写url,存储过程填写参数['GetFileByid','1','2','3'],本地填写上面的数组名称CampusInfo.graduationData
197 | CampusInfo.NavData = [
198 | {"name": "要闻", "tag": "news", "dataLength": 4, "resource": "http://is.snssdk.com/api/news/feed/v51/?category=news_society&"},
199 | {"name": "视频教学", "tag": "video-teaching", "dataLength": 4, "resource": CampusInfo.VideoTeach},
200 | {"name": "毕业季", "tag": "graduation", "dataLength": 8, "resource": CampusInfo.graduationData},
201 | {"name": "程序教学", "tag": "program-teaching","dataLength": 8, "resource": CampusInfo.program},
202 | {"name": "产品教学", "tag": "product-teaching","dataLength": 8, "resource": CampusInfo.ProductData},
203 | {"name": "网络教学", "tag": "network-teaching", "dataLength": 8, "resource": CampusInfo.NetWorkData}
204 | ];
205 | /*过滤数组*/
206 | /*将除了导航数组、广告数组以外的数组的名称都添加到这里面,如产品的数组 CampusInfo.ProductData 就添加为CampusInfo.ProductData, */
207 | CampusInfo.FliterData=[
208 | CampusInfo.VideoTeach,CampusInfo.program,CampusInfo.ProductData,CampusInfo.NetWorkData,CampusInfo.graduationData
209 | ];
--------------------------------------------------------------------------------
/public/js/CampusInfo.js:
--------------------------------------------------------------------------------
1 | Namespace.register('CampusInfo');
2 | function JsonParse (data){
3 | if (typeof data !== 'string' || !data) {
4 | return null
5 | }
6 | return eval('(' + data.replace(/^\s+/, '').replace(/\s+$/, '') + ')')
7 | };
8 | function OptionsInit(options,defaultOptions) {
9 | let opts = {};
10 | let key;
11 | for (key in defaultOptions) {
12 | if (typeof options[key] === 'undefined') {
13 | opts[key] = defaultOptions[key]
14 | } else {
15 | opts[key] = options[key]
16 | }
17 | }
18 | return opts
19 | }
20 | function Ajax(options) {
21 | let ajaxSettings = {
22 | url: '',
23 | type: 'POST',
24 | dataType: 'json',
25 | async: true,
26 | cache: true,
27 | data: null,
28 | contentType: 'application/x-www-form-urlencoded',
29 | success: null,
30 | error: null,
31 | complete: null,
32 | processData:true,
33 | progress:false,
34 | accepts: {
35 | text: 'text/plain',
36 | html: 'text/html',
37 | xml: 'application/xml, text/xml',
38 | json: 'application/json, text/javascript'
39 | },
40 | header:null,
41 | param:null,
42 | withCredentials: false
43 | };
44 | let opts = OptionsInit(options,ajaxSettings);
45 | let param = function (obj) {
46 | let s = [];
47 | for (let key in obj) {
48 | s.push(encodeURIComponent(key) + '=' + encodeURIComponent(obj[key]))
49 | }
50 | return s.join('&');
51 | };
52 | let addToQueryString = function (url, params) {
53 | return url + (url.indexOf('?') > -1 ? '&' : '?') + param(params);
54 | };
55 | let xhr = new XMLHttpRequest();
56 | let url = opts.url;
57 | let sendData = opts.data;
58 | let readyStateChange = function () {
59 | let status = xhr.status;
60 | let data;
61 | if (xhr.readyState !== 4) {
62 | return
63 | }
64 | if (status >= 200 && status < 300 || status === 304) {
65 | if (opts.dataType === 'xml') {
66 | data = xhr.responseXML
67 | } else {
68 | data = xhr.responseText;
69 | if (opts.dataType === 'json') {
70 | data = JsonParse(data);
71 | }
72 | }
73 | if (typeof(opts.success)==='function') {
74 | opts.success.call(opts, data, status, xhr);
75 | }
76 | }
77 | else {
78 | if (typeof(opts.error)==='function') {
79 | opts.error.call(opts, xhr, status)
80 | }
81 | }
82 | if (typeof(opts.complete)==='function') {
83 | opts.complete.call(opts, xhr, status)
84 | }
85 | };
86 | if(opts.param) {
87 | url = addToQueryString(url, opts.param);
88 | }
89 | if (!opts.cache) {
90 | url = addToQueryString(url, {noAjaxCache: (new Date()).getTime()})
91 | }
92 | if ((opts.type === 'GET'||opts.type === 'get')&&sendData&&opts.processData) {
93 | url = addToQueryString(url, sendData);
94 | sendData = null
95 | }
96 | xhr.open(opts.type, url, opts.async);
97 | if ((opts.type === 'POST'||opts.type === 'post')&&sendData&&opts.processData) {
98 | sendData = param(sendData);
99 | xhr.setRequestHeader('Content-type', opts.contentType);
100 | }
101 | for(let i in opts.header){
102 | xhr.setRequestHeader(i, opts.header[i]);
103 | }
104 | if(opts.progress) {
105 | xhr.upload.addEventListener("progress", opts.progress, false);
106 | }
107 | if (opts.dataType && opts.accepts[opts.dataType]) {
108 | xhr.setRequestHeader('Accept', opts.accepts[opts.dataType])
109 | }
110 | xhr.withCredentials = opts.withCredentials;
111 | if (opts.async) {
112 | xhr.onreadystatechange = readyStateChange;
113 | xhr.send(sendData)
114 | }else {
115 | console.warn(opts.url+' 使用了同步请求,该请求将影响性能,不建议使用');
116 | xhr.send(sendData);
117 | readyStateChange()
118 | }
119 | return xhr
120 | };
121 | const {ipcRenderer} = require('electron');
122 | let MainWindow=require('electron').remote.getCurrentWindow();
123 | CampusInfo.LoadAdvert = function () {
124 | for (var i = 0; i < CampusInfo.Advert.length; i++) {
125 | var a=$$("img", {
126 | "draggable":false,
127 | "src": CampusInfo.AdvertData[i].img
128 | }, CampusInfo.Advert[i]);
129 | a.href=CampusInfo.AdvertData[i].script;
130 | a.onclick=function () {
131 | CampusInfo.OpenWeb(this.href)
132 | }
133 | }
134 | };//加载广告
135 | CampusInfo.OpenWeb=function(url){
136 | ipcRenderer.send('open-browers',url);
137 | };//打开网页
138 | CampusInfo.LoadData = function (navMain) {
139 | var data = navMain.resource;//取出数组里定义好的传参
140 | var Tag = navMain.tag;//查看是什么标签
141 | var LeftArea = navMain.Left;//左侧内容容器
142 | var CenterArea = navMain.Center;//中间内容容器
143 | var ContentLength = navMain.dataLength;//中间内容有多少个
144 | var LeftContentArr = [];//记录左侧数据
145 | var CenterTitleArr = [];//记录特殊的蓝色标题数据
146 | var CenterContentArr = [];//记录输出内容
147 | CenterContentArr[0] = [];//三个数组分别用来记录三块内容,内容长度为8或者4
148 | CenterContentArr[1] = [];
149 | CenterContentArr[2] = [];
150 | if (typeof data === 'string') {
151 | CampusInfo.NewsData = [];
152 | CampusInfo.LoadNews = function () {
153 | var url = data + "iid=" + CampusInfo.randomNum(10) + "&device_id=" + CampusInfo.randomNum(11);
154 | Ajax({
155 | url:url,
156 | type:'GET',
157 | success:function(rs){
158 | rs = rs.data;
159 | for (var i = 0; i < rs.length; i++) {
160 | var list = JSON.parse(rs[i].content);
161 | var arr = [];
162 | var falg = true;
163 | CampusInfo.NewsData.forEach(function (value) {
164 | if (value.UserFilesName === list.title) {
165 | falg = false;
166 | return false;
167 | }
168 | });
169 | if (falg && list.image_list&&list.title.length>15) {
170 | arr.UserFilesName = list.title;
171 | arr.UserFilesServerName = list.image_list[0].url;
172 | arr.Action_url = list.url;
173 | CampusInfo.NewsData.push(arr);
174 | }
175 | }
176 | if (CampusInfo.NewsData.length < 19) {
177 | CampusInfo.LoadNews();
178 | } else {
179 | CampusInfo.DealData(ContentLength, LeftContentArr, CenterTitleArr, CenterContentArr, CampusInfo.NewsData);//处理数据
180 | CampusInfo.PrintDataLocal(LeftContentArr, CenterTitleArr, CenterContentArr, LeftArea, CenterArea, Tag);//打印数据(本地数据)
181 | CampusInfo.Loading.remove();//移除loading
182 | CampusInfo.AutoSlider();//开始自动切换
183 | CampusInfo.Bind();//绑定事件
184 | }
185 | }
186 | })
187 | };
188 | CampusInfo.LoadNews();
189 | }else if(typeof data === 'object'&&CampusInfo.Fliter(data)) {
190 | U.A.Request(US.ADMINAUTH, (data), function (rs) {
191 | rs = rs.value;
192 | CampusInfo.DealData(ContentLength,LeftContentArr,CenterTitleArr,CenterContentArr,rs);//处理数据
193 | CampusInfo.PrintData(LeftContentArr,CenterTitleArr,CenterContentArr,LeftArea,CenterArea,Tag)//打印数据(获取的数据)
194 | });
195 | //注释的这里是有用的 是请求返回数据的操作
196 | }else{
197 | CampusInfo.DealData(ContentLength,LeftContentArr,CenterTitleArr,CenterContentArr,data);
198 | CampusInfo.PrintDataLocal(LeftContentArr,CenterTitleArr,CenterContentArr,LeftArea,CenterArea,Tag)
199 | }
200 | };//加载数据
201 | CampusInfo.Fliter=function (data) {
202 | for(var i=0;i 3 && i < 8) {
219 | CenterContentArr[0].push(rs[i]);
220 | }
221 | if (i > 8 && i < 13) {
222 | CenterContentArr[1].push(rs[i]);
223 | }
224 | if (i > 13 && i < 18) {
225 | CenterContentArr[2].push(rs[i]);
226 | }
227 | } else {
228 | if (i === 3 || i === 12 || i === 21) {
229 | CenterTitleArr.push(rs[i]);
230 | }
231 | if (i > 3 && i < 12) {
232 | CenterContentArr[0].push(rs[i]);
233 | }
234 | if (i > 12 && i < 21) {
235 | CenterContentArr[1].push(rs[i]);
236 | }
237 | if (i > 21 && i < 30) {
238 | CenterContentArr[2].push(rs[i]);
239 | }
240 | }
241 | }
242 | }
243 | };
244 | CampusInfo.PrintDataLocal=function (LeftContentArr,CenterTitleArr,CenterContentArr,LeftArea,CenterArea,Tag) {/*左侧内容数组,中间标题数组,中间内容数组,左侧内容区域,中间内容区域,在CampusInfo.NavData定义的标签名*/
245 | for (var j = 0; j < CenterTitleArr.length; j++) {
246 | CenterArea[j].TitleArea.innerHTML = CenterTitleArr[j].UserFilesName;
247 | CenterArea[j].TitleArea.href = CenterTitleArr[j].Action_url;
248 | CenterArea[j].TitleArea.onclick = function () {
249 | CampusInfo.OpenWeb(this.href)
250 | };
251 | for (var k = 0; k < CenterContentArr[j].length; k++) {
252 | CenterArea[j].ContentArea[k].innerHTML = CenterContentArr[j][k].UserFilesName;
253 | CenterArea[j].ContentArea[k].href = CenterContentArr[j][k].Action_url;
254 | CenterArea[j].ContentArea[k].onclick = function () {
255 | CampusInfo.OpenWeb(this.href)
256 | };
257 | }
258 | }
259 | for (var kk = 0; kk < LeftContentArr.length; kk++) {
260 | LeftArea[kk].ImgArea.src = LeftContentArr[kk].UserFilesServerName;
261 | LeftArea[kk].TitleArea.innerHTML = LeftContentArr[kk].UserFilesName;
262 | LeftArea[kk].ImgArea.href = LeftContentArr[kk].Action_url;
263 | LeftArea[kk].ImgArea.onclick = function () {
264 | CampusInfo.OpenWeb(this.href)
265 | }
266 | }
267 | };//打印本地数据
268 | CampusInfo.PrintData=function (LeftContentArr,CenterTitleArr,CenterContentArr,LeftArea,CenterArea,Tag) {/*左侧内容数组,中间标题数组,中间内容数组,左侧内容区域,中间内容区域,在CampusInfo.NavData定义的标签名*/
269 | for (var j = 0; j < CenterTitleArr.length; j++) {
270 | CenterArea[j].TitleArea.innerHTML = CenterTitleArr[j].UserFilesName;
271 | if (Tag === 'graduation') {
272 | CenterArea[j].TitleArea.href = CampusInfo.ResourceUrl + CenterTitleArr[j].UserFilesServerName;
273 | } else {
274 | CenterArea[j].TitleArea.href = CenterTitleArr[j].Action_url;
275 | }
276 | CenterArea[j].TitleArea.onclick = function () {
277 | CampusInfo.OpenWeb(this.href)
278 | };
279 | for (var k = 0; k < CenterContentArr[j].length; k++) {
280 | CenterArea[j].ContentArea[k].innerHTML = CenterContentArr[j][k].UserFilesName;
281 | if (Tag === 'graduation') {
282 | CenterArea[j].ContentArea[k].href = CampusInfo.ResourceUrl + CenterContentArr[j][k].UserFilesServerName;
283 | } else {
284 | CenterArea[j].ContentArea[k].href = CenterContentArr[j][k].Action_url;
285 | }
286 | CenterArea[j].ContentArea[k].onclick = function () {
287 | CampusInfo.OpenWeb(this.href)
288 | };
289 | }
290 | }
291 | for (var kk = 0; kk < LeftContentArr.length; kk++) {
292 | LeftArea[kk].ImgArea.src = CampusInfo.ResourceUrl + LeftContentArr[kk].UserFilesServerName;//将图片地址添加进img标签
293 | LeftArea[kk].TitleArea.innerHTML = LeftContentArr[kk].UserFilesName;//将数据标题写入标题容器
294 | if (Tag === 'graduation') {//如果是毕业季数据
295 | LeftArea[kk].ImgArea.href = CampusInfo.ResourceUrl + LeftContentArr[kk].UserFilesServerName;//在图片前加上资源地址
296 | } else {
297 | LeftArea[kk].ImgArea.href = LeftContentArr[kk].Action_url;//否则直接放图片地址,这个href是用来点开链接的
298 | }
299 | LeftArea[kk].ImgArea.onclick = function () {
300 | CampusInfo.OpenWeb(this.href)//打开广告链接
301 | }
302 | }
303 | };//打印网络数据
304 | CampusInfo.randomNum = function (n) {
305 | var t = '';
306 | for (var i = 0; i < n; i++) {
307 | t += Math.floor(Math.random() * 10);
308 | }
309 | return t;//返回一个n长度的随机数
310 | };//随机数传参为随机数的长度
311 | CampusInfo.Bind = function () {
312 | CampusInfo.Nav[0].className = 'CampusInfoHeadNavActive';//默认第一个选中
313 | CampusInfo.Main[0].style.display = 'block';//默认第一个内容显示
314 | CampusInfo.Head.onclick=function () {
315 | CampusInfo.OpenWeb('http://seo.1473.cn')
316 | };//校内版点击跳转
317 | for (var i = 0; i < CampusInfo.Nav.length; i++) {//循环所有导航元素添加绑定事件
318 | (function (i) {
319 | CampusInfo.Nav[i].onclick = function () {//添加点击事件
320 | CampusInfo.AutoState=false;//如果点击了就取消自动切换,将自动切换禁用
321 | for (var j = 0; j < CampusInfo.Nav.length; j++) {//循环改变所有导航为未选中状态,所有内容为隐藏
322 | CampusInfo.Nav[j].className = '';
323 | CampusInfo.Main[j].style.display = 'none';
324 | }
325 | CampusInfo.Nav[i].className = 'CampusInfoHeadNavActive';//给指定的导航添加选中
326 | CampusInfo.Main[i].style.display = 'block';//给指定的内容添加显示
327 | }
328 | })(i)
329 | }
330 | ipcRenderer.on('quit',()=>{
331 | CampusInfo.QuitFlag=true;
332 | });
333 | window.onbeforeunload=(event)=>{
334 | if(!CampusInfo.QuitFlag&&process.env.NODE_ENV !== 'development') {
335 | MainWindow.hide();
336 | return false
337 | }
338 | };
339 | };//绑定事件
340 | CampusInfo.AutoSlider = function () {
341 | if (CampusInfo.AutoState) {//如果自动切换模式打开
342 | CampusInfo.NowShow++;//默认为-1,切换对应CampusInfo.Main显示
343 | if (CampusInfo.NowShow === CampusInfo.Nav.length) {//如果是最后一个则返回第一个
344 | CampusInfo.NowShow = 0;
345 | }
346 | for (var i = 0; i < CampusInfo.Nav.length; i++) {//循环改变所有导航为未选中状态,所有内容为隐藏
347 | CampusInfo.Nav[i].className = '';
348 | CampusInfo.Main[i].style.display = 'none';
349 | }
350 | CampusInfo.Nav[CampusInfo.NowShow].className = 'CampusInfoHeadNavActive';//给指定的导航添加选中
351 | CampusInfo.Main[CampusInfo.NowShow].style.display = 'block';//给指定的内容添加显示
352 | setTimeout(function () {
353 | CampusInfo.AutoSlider();//开始自动切换
354 | }, 5000);//5秒切换一次
355 | }
356 | };//自动切换
357 | CampusInfo.LoadWeather=function (location) {
358 | if(!location){//如果没有传地址就默认为深圳
359 | location='深圳'
360 | }
361 | U.A.Request("http://api.map.baidu.com/telematics/v3/weather?location="+location+"&output=json&ak=v4Wf3i6LQtNU0CvL3fScxzIx", null, function (rs) {
362 | rs = rs.value.results[0].weather_data[0];
363 | var temperature=rs.temperature;
364 | var weather=rs.weather;
365 | CampusInfo.WeatherPanel.innerHTML=location+' '+weather+' '+temperature;//将返回信息输出到对应元素内
366 | });
367 | };//获取天气
368 | CampusInfo.Init = function () {
369 | CampusInfo.AutoState=true;//默认为true自动切换,false不切换
370 | CampusInfo.NowShow=-1;//默认显示第几个-1是为了加载完成不会直接跳过第一个
371 | CampusInfo.ResourceUrl = 'http://fs.1473.cn/';//资源地址
372 | CampusInfo.Loading=$(".CampusInfoLoading")[0];
373 | CampusInfo.WeatherPanel=$(".CampusInfoHeadWeather")[0];
374 | CampusInfo.NavContainer = $(".CampusInfoHeadNav")[0];//导航元素主容器
375 | CampusInfo.MainContainer = $(".CampusInfoMain")[0];//内容元素住容器
376 | CampusInfo.Nav = [];//记录导航元素
377 | CampusInfo.Main = [];//记录内容元素
378 | CampusInfo.Advert = [];//记录广告区域
379 | CampusInfo.QuitFlag=false;
380 | CampusInfo.Head=$(".CampusInfoHeadTitle span")[0];//获取头部的校内版元素
381 | for (var i = 0; i < CampusInfo.NavData.length; i++) {//循环导航数组创建元素
382 | var area = [];//初始化area数组
383 | var leftContent = [];//初始化左侧内容数组
384 | var li = $$("li", {
385 | "innerHTML": CampusInfo.NavData[i].name
386 | }, CampusInfo.NavContainer);//创建一个导航元素在导航容器内
387 | var container = $$("div", {
388 | "className": "CampusInfoContainer",
389 | }, CampusInfo.MainContainer);//创建一个主内容容器在内容容器内
390 | var left_container = $$("div", {
391 | "className": "CampusInfoContLeft",
392 | }, container);//创建一个左侧内容区域在主容器里
393 | var center_container = $$("div", {
394 | "className": "CampusInfoContCenter",
395 | }, container);//创建一个中心内容区域在主容器里
396 | var right_container = $$("div", {
397 | "className": "CampusInfoContRight",
398 | }, container);//传建一个右侧内容容器在数组里
399 | CampusInfo.Nav[i] = li;//将导航元素丢进数组里
400 | CampusInfo.Main[i] = container;//将页面元素丢进数组里
401 | CampusInfo.Main[i].tag = CampusInfo.NavData[i].tag;//获取导航数组的内容标签
402 | CampusInfo.Main[i].dataLength = CampusInfo.NavData[i].dataLength;//获取导航数组规定的下方内容数据个数4或者8
403 | CampusInfo.Main[i].resource = CampusInfo.NavData[i].resource;//获取导航数组中的数据来源
404 | for (var j = 0; j < 3; j++) {
405 | area[j] = $$("div", {
406 | "className": "CampusInfoContCenterContent",
407 | }, center_container);//创建一个用来放置内容的元素,因为有三栏内容 所以创建三个并记录到ara数组
408 | area[j].TitleArea = $$("p", {
409 | "className": "CampusInfoContCenterTitle",
410 | }, area[j]);//创建放置标题的元素,同样三个 丢进area下的TitleArr数组
411 | for (var k = 0; k < CampusInfo.NavData[i].dataLength; k++) {
412 | $$("span", {
413 | "className": "CampusInfoContCenterCArea" + CampusInfo.NavData[i].dataLength
414 | }, area[j]);//这里根据之前取出的数据长度创建元素,丢进area里的ContentArea
415 | area[j].ContentArea = area[j].getElementsByTagName('span');//记录创建的span数组
416 | }
417 | CampusInfo.Main[i].Center = area;//将area丢回内容元素下的中间部分
418 | leftContent[j] = $$("div", {
419 | "className": "CampusInfoContLeftContent"
420 | }, left_container);//创建三个放置左侧内容的元素
421 | leftContent[j].ImgArea = $$("img", {"draggable":false}, leftContent[j]);//对应三个内容的img标签 丢回leftContent下的ImgArea数组
422 | leftContent[j].TitleArea = $$("p", {}, leftContent[j]);//对应三个内容的标题,丢回leftContent下的TitleArea数组
423 | CampusInfo.Main[i].Left = leftContent//将leftContent丢进主容器下的左侧数组
424 | }
425 | for (var k = 0; k < 2; k++) {
426 | var advert = $$("div", {
427 | "className": "CampusInfoContRightContent",
428 | }, right_container);//在每个右侧版块创建两个放置广告的元素
429 | CampusInfo.Advert.push(advert)//将创建的广告容器元素丢进数组里
430 | }
431 | }
432 | for(var i=0;i=30){//如果如果li标签页大于35
61 | confirm("窗口太多,请关闭一些再使用");//弹出提示
62 | return false;
63 | }
64 | const protocol=url.parse(e.url).protocol;
65 | if(protocol==='http:'||protocol==='https:'||protocol==="about:blank"){
66 | US_Browser.CreatBrower(e.url);//系统的默认浏览器中打开新的URL
67 | }
68 | });
69 | webview.addEventListener("page-favicon-updated",function (e) {//当页面收到图标网址时触发
70 | ListBody.tag_favicon.src=e.favicons[0];
71 | this.tag.data.favicons=e.favicons[0];
72 | });
73 | webview.addEventListener('will-navigate',function (e) {//导航跳转时触发
74 | this.tag.data.url=e.url;
75 | if(webview===US_Browser.SelecteWebview) {
76 | US_Browser.Head[5].value=e.url;
77 | }
78 | });
79 | webview.addEventListener('did-navigate',function (e) {//导航完成时触发
80 | this.tag.data.url=e.url;
81 | if(webview===US_Browser.SelecteWebview) {
82 | US_Browser.Head[5].value=e.url;
83 | }
84 | ListBody.Webname.innerHTML=this.getTitle();
85 | });
86 | webview.addEventListener('did-navigate-in-page',function (e) {//导航完成时触发
87 | this.tag.data.url=e.url;
88 | US_Browser.Head[5].value=e.url;
89 | US_Browser.CheckState(this);
90 | });
91 | webview.addEventListener('page-title-updated',function (e) {//导航完成时触发
92 | this.tag.data.name=e.title;
93 | ListBody.Webname.innerHTML=e.title;
94 | });
95 | webview.addEventListener('dom-ready',function (e) {//加载完成webview后执行
96 | ListBody.Webname.innerHTML=this.getTitle();//更改webview的title
97 | this.tag.data.name=this.getTitle();
98 | US_Browser.CheckState(this);
99 | this.focus();
100 | this.getWebContents().focus();
101 | US_Browser.isready = true
102 | });
103 | webview.addEventListener('did-get-response-details',function (e) {
104 | US_Browser.LoadTips.innerHTML='正在请求:'+e.originalURL;
105 | });
106 | webview.addEventListener('did-start-loading',function (e) {
107 | ListBody.tag_favicon.src='';
108 | US_Browser.IsLoading(this,true);
109 | });
110 | webview.addEventListener('did-finish-load',function (e) {
111 | US_Browser.IsLoading(this,false);
112 | US_Browser.LocalStorage(this);
113 | });
114 | webview.addEventListener('did-frame-finish-load',function (e) {
115 | US_Browser.IsLoading(this,false)
116 | });
117 | webview.addEventListener('did-stop-loading',function (e) {
118 | US_Browser.IsLoading(this,false)
119 | });
120 | webview.addEventListener('load-commit',function (e) {
121 | US_Browser.LoadTips.innerHTML=e.url;
122 | US_Browser.IsLove(e.url)
123 | });
124 | webview.addEventListener('found-in-page', function(e) {
125 | if (e.result.finalUpdate) {
126 | US_Browser.Elm[1].innerHTML=e.result.activeMatchOrdinal+'/'+e.result.matches;
127 | US_Browser.Elm[2].onclick=function () {
128 |
129 | };
130 | US_Browser.Elm[3].onclick=function () {
131 | US_Browser.SelecteWebview.findInPage(US_Browser.Elm[0].value)
132 | };
133 | }
134 | });
135 | webview.addEventListener('did-fail-load',function (e) {
136 | if (e.errorCode === -3) {
137 | return
138 | }
139 | US_Browser.SelecteWebview.src = './blank.html'
140 | });
141 | /*webview.addEventListener('did-fail-load',function (e) {
142 | if(webview.state) {
143 | let msg = e.errorDescription;
144 | let old_url = US_Browser.Head[5].value;
145 | US_Browser.SelecteWebview.src = 'error.html?msg=' + msg + '&url=' + this.src;
146 | US_Browser.Head[5].value = old_url;
147 | }
148 | });*/
149 | webview.fullSrceen=false;
150 | webview.FindKey=false;
151 | webview.onmousedown=function (e) {//webview鼠标事件
152 | US_Browser.US_OpenLinkInNew.style.display=US_Browser.US_OpenImgInNew.style.display='none';
153 | ipcRenderer.on('elm',function (e,msg) {
154 | US_Browser.MouseData=msg;
155 | if(US_Browser.MouseData) {
156 | let tag = US_Browser.MouseData.tag;
157 | if (tag === 'A') {
158 | US_Browser.US_OpenLinkInNew.style.display = 'block';
159 | US_Browser.US_OpenLinkInNew.onclick = function () {
160 | US_Browser.CreatBrower(US_Browser.MouseData.href)
161 | };
162 | } else if (tag === 'IMG') {
163 | US_Browser.US_OpenImgInNew.style.display = 'block';
164 | US_Browser.US_OpenImgInNew.onclick = function () {
165 | US_Browser.CreatBrower(US_Browser.MouseData.src)
166 | };
167 | } else {
168 | US_Browser.US_OpenLinkInNew.style.display = US_Browser.US_OpenImgInNew.style.display = 'none';
169 | }
170 | }
171 | });
172 | US_Browser.MouseMenu(US_Browser.MouseMenuMain,this,e);//右键显示创建应用菜单
173 | };
174 | ListBody.tag_close.onclick=function () {//点击标题页关闭按钮
175 | event.stopPropagation();
176 | let closeArr = $(".tag_close");
177 | closeArr[0].index = 0;//设置li下第一个关闭图标的index
178 | if(ListBody.tag_close.index === 0){
179 | webview.tag.nextSibling.onclick();//点击当前li下一个
180 | }else{
181 | webview.tag.previousSibling.onclick();//点击当前li上一个
182 | }
183 | if(ListBody.offsetWidth<50){
184 | ListBody.Webname.style.display = "none";
185 | }else{
186 | ListBody.Webname.style.display = "block";
187 | }
188 | US_Browser.NavContainer.removeChild(webview.tag);//移除当前li
189 | document.body.removeChild(BrowerContainer);//移除当前webview
190 | };
191 | // 标签页右键‘关闭标签’
192 | li.onmousedown = function (e) {
193 | if(e.button == 2 ){
194 | US_Browser.MouseMenu($("#US_TagSet")[0],this,event);
195 | $("#DelectTags")[0].onclick = function(){
196 | ListBody.tag_close.click(0)
197 | }
198 | }
199 | }
200 | webview.src=address;//给webview的src传值
201 | US_Browser.Bind();
202 | ListBody.click();//点击li下的包裹节点
203 | if(flag){
204 | let pattern = new RegExp("^[a-zA-Z]:/[a-zA-Z_0-9//]*");
205 | if(pattern.test(address)){
206 | webview.src = "file:///"+address;
207 | }else {
208 | if (address.match(http) || address.match(https)) {//判断是否存在http或https
209 | webview.src = address;//给webview的src传值
210 | } else if (this.value.match(www) || this.value.match(m)) {
211 | webview.src = 'http://' + this.value;//给webview的src传值
212 | } else {
213 | webview.src = 'https://www.baidu.com/s?cl=3&wd=' + this.value;//给webview的src传值
214 | }
215 | }
216 | webview.tag.getElementsByTagName('img')[0].style.display = "block";//标签页图标显示
217 | }
218 | US_Browser.BrowerList.drag();
219 | };//创建一个新的浏览器选项卡
220 | US_Browser.MouseMenu=function (menu_main,data,e,flag) {//右键菜单事件
221 | let createNode=document.body;//获取第一和参数父元素
222 | let MouseMenuMain=$('.MouseMenuMain');//获取右键菜单事件的ul元素
223 | US_Browser.MouseMenuMainer.style.display='none';
224 | for(let i=0;i createNode.offsetWidth) {//判断距左位置
234 | menu_main.style.left = menu_main.style.left.split('px')[0] - menu_main.offsetWidth -30+ 'px';//距左多少
235 | }
236 | if (menu_main.getBoundingClientRect().top + menu_main.offsetHeight> createNode.offsetHeight) {//判断距上位置
237 | menu_main.style.top = menu_main.style.top.split('px')[0] - menu_main.offsetHeight + 'px';//距上多少
238 | }
239 | }
240 | document.onmouseup = null;//清空
241 | }
242 | };
243 | menu_main.onclick=createNode.onmousewheel=function () {//执行右键菜单隐藏
244 | for(let i=0;i-1){//判断搜索框是否有https
295 | US_Browser.LockIcon.style.color = '#035816';
296 | }else {
297 | US_Browser.LockIcon.style.color = '#d3d3d3';
298 | }
299 | };
300 | /*浏览器按钮函数*/
301 | US_Browser.about=function () {
302 | ipc.send('AboutUsW-show');
303 | };
304 | US_Browser.ShowHistory=function(){
305 | ipc.send('BrowserHistory-show');
306 | };
307 | US_Browser.Feedback=function(){
308 | ipc.send('BrowserFeedback-show');
309 | };
310 | US_Browser.ClearCache=function(){
311 | localStorage.clear();
312 | };
313 | US_Browser.CreatBrowerWindow=function(){
314 | ipc.send('newBrowersWindow')
315 | };
316 | US_Browser.Print=function(){
317 | US_Browser.SelecteWebview.print();
318 | };
319 | US_Browser.DevTools=function(){
320 | if(US_Browser.SelecteWebview.isDevToolsOpened()){//判断是否存在
321 | US_Browser.SelecteWebview.closeDevTools();//关闭开发者工具
322 | }
323 | US_Browser.SelecteWebview.openDevTools();//打开开发者工具
324 | };
325 | US_Browser.SourceCode = function () {//查看源代码
326 | US_Browser.CreatBrower("view-source:"+US_Browser.Head[5].value);
327 | };
328 | US_Browser.Exit=function(){
329 | BrowersWindow.close();
330 | };
331 | US_Browser.goBack = function(){//执行后退
332 | US_Browser.SelecteWebview.goBack();
333 | };
334 | US_Browser.goForward = function(){//执行前进
335 | US_Browser.SelecteWebview.goForward();
336 | };
337 | US_Browser.CampusInfo=function(){
338 | ipc.send('CampusInfo')
339 | };
340 | US_Browser.reFresh = function(){//执行刷洗
341 | if(US_Browser.SelecteWebview.state) {
342 | US_Browser.SelecteWebview.reload();
343 | }
344 | };
345 | US_Browser.Stop=function(){
346 | US_Browser.SelecteWebview.stop();
347 | };
348 | US_Browser.IsLoading=function(webview,flag){
349 | if(flag) {
350 | if (webview === US_Browser.SelecteWebview) {
351 | US_Browser.Head[2].className = 'icon-cancel';
352 | webview.state=false;
353 | } else {
354 | US_Browser.Head[2].className = 'icon-cw';
355 | webview.state=true;
356 | }
357 | US_Browser.LoadTips.style.display='block';
358 | }else {
359 | if(webview===US_Browser.SelecteWebview) {
360 | US_Browser.Head[2].className='icon-cw';
361 | webview.state=true;
362 | }else{
363 | US_Browser.Head[2].className='icon-cancel';
364 | webview.state=false;
365 | }
366 | US_Browser.LoadTips.innerHTML='';
367 | US_Browser.LoadTips.style.display='none';
368 | }
369 | };
370 | /*浏览器初始化*/
371 | US_Browser.IpcBind=function(){
372 | ipcRenderer.on('flag', function(event, message){//接收用户指定的文件
373 | if(message==='-1'){
374 | US_Browser.CreatBrower('http://client.1473.cn/homepage.html');//开始进入一个页面
375 | }
376 | });
377 | ipcRenderer.on('url', function(event, message){//接收用户指定的文件
378 | if(message){
379 | US_Browser.CreatBrower(message,true);//打开用户请求的页面
380 | }
381 | });
382 | ipcRenderer.on('open-history', function(event, message){//接收历史记录地址
383 | if(message){
384 | US_Browser.CreatBrower(message,true);//打开用户请求的页面
385 | }
386 | });
387 | ipcRenderer.on('download-progress',function (event,message) {
388 | console.log(message)
389 | });
390 | ipcRenderer.on('geturl',function (event,message) {
391 | US_Browser.CreatBrower(message);//开始进入一个页面
392 | });
393 | ipcRenderer.on('size',function (event,message) {
394 | if(message>0){
395 | US_Browser.ControlButton[1].className='icon-window-restore';
396 | US_Browser.NavContainer.style.padding = "5px 0 0";
397 | US_Browser.RightMenu.style.top='71px';
398 | US_Browser.BrowerContainer.each(function (index,elm) {
399 | elm.style.top='106px';
400 | elm.style.height='calc(100% - 106px)';
401 | })
402 | }else {
403 | US_Browser.ControlButton[1].className='icon-window-maximize';
404 | US_Browser.NavContainer.style.padding = "15px 0 0";
405 | US_Browser.RightMenu.style.top='81px';
406 | US_Browser.BrowerContainer.each(function (index,elm) {
407 | elm.style.top='116px';
408 | elm.style.height='calc(100% - 117px)';
409 | })
410 | }
411 | })
412 | };//ipc通信绑定
413 | US_Browser.Bind=function(){//绑定
414 | US_Browser.BrowerListBody = $(".BrowerListBody");
415 | US_Browser.BrowersTag=$(".BrowerList");//获取选项卡li
416 | US_Browser.BrowerContainer=$(".BrowerContainer");//获取webview
417 | US_Browser.SelecteWebview=US_Browser.BrowerContainer[0].children[0];
418 | US_Browser.US_OpenLinkInNew=$(".US_OpenLinkInNew")[0];
419 | US_Browser.US_OpenImgInNew=$(".US_OpenImgInNew")[0];
420 | for(let i=0;i=30){//如果如果li标签页大于35
562 | alert("窗口太多,请关闭一些再使用");//弹出提示
563 | return false;
564 | }
565 | US_Browser.CreatBrower('./new.html');
566 | US_Browser.Head[5].focus();
567 | US_Browser.RightMenu.style.display='none';
568 | US_Browser.MouseMenuMainer.style.display='none';
569 | };
570 | US_Browser.RightMenubtn.onclick = function () {
571 | if (window.localStorage.getItem('arr') === null) {
572 | window.localStorage.setItem('arr', `[{"url": "${US_Browser.SelecteWebview.src}","icon": "${$('.BrowerActive')[0].children[0].children[0].src}", "title": "${US_Browser.SelecteWebview.getTitle()}"}]`)
573 | } else if (window.localStorage.getItem('arr').indexOf(US_Browser.SelecteWebview.src) != -1) {
574 | let b = JSON.parse(window.localStorage.getItem('arr'))
575 | b.map((i, j) => {
576 | if (i.url === US_Browser.SelecteWebview.src) {
577 | let arr = JSON.parse(window.localStorage.getItem('arr'))
578 | arr.splice(j, 1);
579 | window.localStorage.setItem('arr', JSON.stringify(arr))
580 | $('#LoveWebSize')[0].className = 'fa fa-heart-o'
581 | $('.MouseMenuMainer')[0].removeChild($('.MouseMenuMainer')[0].children[j])
582 | $('#FavoritesUl')[0].removeChild($('#FavoritesUl')[0].children[j])
583 | }
584 | })
585 | return
586 | } else {
587 | let c = JSON.parse(window.localStorage.getItem('arr'))
588 | c.push({
589 | "url": US_Browser.SelecteWebview.src,
590 | "icon": $('.BrowerActive')[0].children[0].children[0].src,
591 | "title": US_Browser.SelecteWebview.getTitle()
592 | })
593 | window.localStorage.setItem('arr', JSON.stringify(c))
594 | }
595 | US_Browser.xuanrang(US_Browser.SelecteWebview.src, $('.BrowerActive')[0].children[0].children[0].src, US_Browser.SelecteWebview.getTitle())
596 | $('#LoveWebSize')[0].className = 'fa fa-heart'
597 | US_Browser.drag()
598 | }
599 | US_Browser.Loveitem = () => {
600 | if (window.localStorage.getItem('arr') === null){
601 | let data = [
602 | {
603 | "url":"http://www.1473.cn/",
604 | "icon":"./public/img/tray/logo.png",
605 | "title":"云端 - 1473.cn"
606 | }
607 | ]
608 | data.map((i, j) => {
609 | US_Browser.xuanrang(i.url, i.icon, i.title)
610 | window.localStorage.setItem('arr', `[{"url": "${i.url}","icon": "${i.icon}", "title": "${i.title}"}]`)
611 | })
612 | return
613 | }
614 | JSON.parse(window.localStorage.getItem('arr')).map((i, j) => {
615 | US_Browser.xuanrang(i.url, i.icon, i.title)
616 | })
617 | }
618 | US_Browser.IsLove = (msg) => {
619 | if (window.localStorage.getItem('arr') === null){ return }
620 | if (window.localStorage.getItem('arr').indexOf(msg) != -1) {
621 | $('#LoveWebSize')[0].className = 'fa fa-heart'
622 | } else {
623 | $('#LoveWebSize')[0].className = 'fa fa-heart-o'
624 | }
625 | }
626 | US_Browser.gotoLove = (msg) => {
627 | US_Browser.SelecteWebview.src = msg
628 | US_Browser.MouseMenuMainer.style.display = 'none'
629 | }
630 | US_Browser.xuanrang = (url, icon, title) => {
631 | $('#FavoritesUl')[0].innerHTML += `
632 |
633 |

634 |
${title}
635 |
636 | `
637 | $('.MouseMenuMainer')[0].innerHTML += `
638 |
639 |

640 |
${title}
641 |
642 | `
643 | }
644 | US_Browser.FavoritesMore.onclick = () => {
645 | US_Browser.MouseMenuMainer.style.display = 'block'
646 | }
647 | window.addEventListener('dragleave',function (e) {
648 | e.preventDefault();
649 | return false;
650 | });
651 | window.addEventListener('dragover',function (e) {
652 | e.preventDefault();
653 | return false;
654 | });
655 | window.addEventListener('dragenter',function (e) {
656 | e.preventDefault();
657 | return false;
658 | });
659 | window.addEventListener( "drop", function (e) {
660 | e.preventDefault();
661 | return false;
662 | }, false );
663 | document.body.onkeydown=function(evt){
664 | evt = (evt) ? evt : window.event;
665 | if(evt.keyCode===112 ){
666 | US_Browser.about();
667 | }else if(evt.keyCode===114||((evt.ctrlKey)&&(evt.keyCode===70))||((evt.ctrlKey)&&(evt.keyCode===71))) {//查找
668 | US_Browser.Find();
669 | }else if((evt.keyCode===116)||((evt.ctrlKey)&&(evt.keyCode===82))){//重新加载、刷新
670 | if(US_Browser.Head[2].className==='icon-cw') {
671 | US_Browser.reFresh()
672 | }else{
673 | US_Browser.Stop();
674 | US_Browser.Head[2].className='icon-cw';
675 | }
676 | }else if((evt.ctrlKey)&&(evt.keyCode===72)){//历史记录
677 | US_Browser.ShowHistory();
678 | }else if((evt.ctrlKey)&&(evt.keyCode===80)){//打印
679 | US_Browser.Print();
680 | }else if((evt.ctrlKey)&&(evt.keyCode===84)){//打开一个新标签页
681 | US_Browser.CreatBrower(null);
682 | }else if((evt.ctrlKey)&&(evt.keyCode===78)){//打开一个新的窗口
683 | US_Browser.CreatBrowerWindow('');
684 | }else if((evt.ctrlKey)&&(evt.keyCode===85)){//查看网页源代码
685 | US_Browser.SourceCode();
686 | }else if((evt.altKey)&&(evt.keyCode===39)){//前进
687 | US_Browser.goForward();
688 | }else if((evt.altKey)&&(evt.keyCode===37)){//后退
689 | US_Browser.goBack();
690 | }else if(evt.keyCode===117){//选择地址栏
691 | if(document.activeElement.id===US_Browser.Head[5].id){
692 | US_Browser.Head[5].blur();
693 | }else{
694 | US_Browser.Head[5].focus();
695 | US_Browser.Head[5].select();
696 | }
697 | }else if(evt.keyCode===121){//F10菜单
698 | US_Browser.RightMenu.style.display=US_Browser.RightMenu.offsetWidth?'none':'block';
699 | }else if(evt.keyCode===122){//F11全屏
700 | if(US_Browser.SelecteWebview.fullSrceen){
701 | if (document.exitFullscreen) {
702 | document.exitFullscreen();
703 | }
704 | else if (document.mozCancelFullScreen) {
705 | document.mozCancelFullScreen();
706 | }
707 | else if (document.webkitCancelFullScreen) {
708 | document.webkitCancelFullScreen();
709 | }
710 | else if (document.msExitFullscreen) {
711 | document.msExitFullscreen();
712 | }
713 | US_Browser.SelecteWebview.fullSrceen=false;
714 | }else{
715 | US_Browser.SelecteWebview.webkitRequestFullscreen();
716 | US_Browser.SelecteWebview.fullSrceen=true
717 | }
718 | }else if (evt.keyCode===123||((evt.ctrlKey)&&(evt.shiftKey)&&(evt.keyCode===73))) {//F12、ctrl+shift+i
719 | US_Browser.DevTools();
720 | }else if((evt.ctrlKey)&&(evt.keyCode===87)) {//关闭标签页
721 | if ($(".BrowerContainer").length > 0) {
722 | US_Browser.SelecteWebview.tag.children[0].tag_close.click();
723 | }
724 | }else if(((evt.ctrlKey)&&(evt.shiftKey)&&(evt.keyCode===81))){//退出浏览器
725 | US_Browser.Exit();
726 | }else if(((evt.ctrlKey)&&(evt.shiftKey)&&(evt.keyCode===46))){
727 | US_Browser.ClearCache();
728 | }else if(((evt.altKey)&&(evt.shiftKey)&&(evt.keyCode===73))){
729 | US_Browser.Feedback();
730 | }else if(((evt.altKey)&&(evt.shiftKey)&&(evt.keyCode===83))){
731 | US_Browser.CampusInfo();
732 | }
733 | };
734 | US_Browser.drag = function() {
735 | US_Browser.columns = document.querySelectorAll('#FavoritesUl .column');
736 | US_Browser.columnser = document.querySelectorAll('.MouseMenuMainer .column');
737 | US_Browser.dragEl = null;
738 | [].forEach.call(US_Browser.columns,function(column){
739 | column.addEventListener("dragstart",US_Browser.domdrugstart,false);
740 | column.addEventListener('dragenter', US_Browser.domdrugenter, false);
741 | column.addEventListener('dragover', US_Browser.domdrugover, false);
742 | column.addEventListener('dragleave', US_Browser.domdrugleave, false);
743 | column.addEventListener('drop', US_Browser.domdrop, false);
744 | column.addEventListener('dragend', US_Browser.domdrapend, false);
745 | column.addEventListener('mousedown', US_Browser.onmousedown, false);
746 | });
747 | [].forEach.call(US_Browser.columnser,function(column){
748 | column.addEventListener('mousedown', US_Browser.onmousedown, false);
749 | });
750 | }
751 | US_Browser.onmousedown = function(e){
752 | let btnNum = e.button;
753 | let BookmarkSet = document.querySelector('#US_BookmarkSet')
754 | if(btnNum==2){
755 | BookmarkSet.style.display = 'block'
756 | BookmarkSet.style.top = `${e.clientY}px`
757 | BookmarkSet.style.left = `${e.clientX}px`
758 | US_Browser.DelectBookmarktar = this
759 | }
760 | }
761 | US_Browser.domdrugstart = function(e) {
762 |
763 | US_Browser.dragEl = this;
764 |
765 | e.dataTransfer.setData("text/html",this.innerHTML);
766 | }
767 | US_Browser.domdrugenter = function(e) {
768 | }
769 | US_Browser.domdrugover = function(e) {
770 | if (e.preventDefault) {
771 | e.preventDefault();
772 | }
773 |
774 | e.dataTransfer.dropEffect = 'move';
775 |
776 | return false;
777 | }
778 | US_Browser.domdrugleave = function(e) {
779 | }
780 | US_Browser.domdrop = function(e) {
781 | if (e.stopPropagation) {
782 | e.stopPropagation();
783 | }
784 |
785 | if (US_Browser.dragEl != this) {
786 | US_Browser.dragEl.innerHTML = this.innerHTML;
787 | this.innerHTML = e.dataTransfer.getData('text/html');
788 | }
789 | let arr = JSON.parse(window.localStorage.getItem('arr'));
790 | let thiser = US_Browser.getchild(this)
791 | let laster = US_Browser.getchild(US_Browser.dragEl)
792 | let car = arr[thiser]
793 | arr[thiser] = arr[laster]
794 | arr[laster] = car
795 | window.localStorage.setItem('arr', JSON.stringify(arr))
796 | return false;
797 | }
798 | US_Browser.domdrapend = function(e) {
799 | [].forEach.call(US_Browser.columns, function (column) {
800 | });
801 | }
802 | US_Browser.getchild = function(msg){
803 | var i=0;
804 | while(msg = msg.previousSibling){
805 | i++;
806 | }
807 | return i - 1
808 | }
809 | US_Browser.DelectBookmark.onclick = function(){
810 | let BookmarkSet = document.querySelector('#US_BookmarkSet')
811 | BookmarkSet.style.display = 'none'
812 | let b = JSON.parse(window.localStorage.getItem('arr'))
813 | b.map((i, j) => {
814 | if (i.url === US_Browser.DelectBookmarktar.getAttribute('data')) {
815 | let arr = JSON.parse(window.localStorage.getItem('arr'))
816 | arr.splice(j, 1);
817 | window.localStorage.setItem('arr', JSON.stringify(arr))
818 | $('#FavoritesUl')[0].removeChild($('#FavoritesUl')[0].children[j])
819 | $('.MouseMenuMainer')[0].removeChild($('.MouseMenuMainer')[0].children[j])
820 | US_Browser.DelectBookmarktar.style.display = 'none';
821 | if(i.url === US_Browser.SelecteWebview.src){
822 | $('#LoveWebSize')[0].className = 'fa fa-heart-o'
823 | }
824 | }
825 | })
826 | }
827 | US_Browser.OpenBookmark.onclick = function(){
828 | US_Browser.CreatBrower(US_Browser.DelectBookmarktar.getAttribute('data'))
829 | document.querySelector('.US_BookmarkSet').style.display = 'none'
830 | }
831 | US_Browser.OpenBookmarker.onclick = function(){
832 | ipc.send('openlove', US_Browser.DelectBookmarktar.getAttribute('data'))
833 | $('#US_BookmarkSet')[0].style.display = 'none';
834 | }
835 | // 标签页拖动、右键单击事件
836 | US_Browser.BrowerList.drag = function () {
837 | US_Browser.tags = document.querySelectorAll('.bowerCreaterWindow .BrowerList');
838 | US_Browser.tagEL = null;
839 | US_Browser.stScreenX = null;
840 | [].forEach.call(US_Browser.tags,function(BrowerList){
841 | // 用户开始拖动元素或文本选择时会触发该事件
842 | BrowerList.addEventListener('dragstart',US_Browser.tagdragstart,false)
843 | // 当拖动的元素或文本选择进入有效的放置目标时,将触发该事件
844 | BrowerList.addEventListener('dragenter',US_Browser.tagdragenter,false)
845 | // 当在有效放置目标上拖动元素或文本选择时(每几百毫秒),将触发该事件。
846 | // 该事件在放置目标上触发。
847 | BrowerList.addEventListener('dragover',US_Browser.tagdragover,false)
848 | // 当拖动的元素或文本选择留下有效的放置目标时,将触发该事件
849 | BrowerList.addEventListener('dragleave',US_Browser.tagdragleave,false)
850 | // 在有效放置目标上删除元素或文本选择时会触发该事件
851 | BrowerList.addEventListener('drop',US_Browser.tagdrop,false)
852 | // 当拖动操作结束时(通过释放鼠标按钮或按下转义键)将触发该事件
853 | BrowerList.addEventListener('dragend',US_Browser.tagdragend,false)
854 | // 标签页右键单击事件
855 | BrowerList.addEventListener('mousedown',US_Browser.tagmousedown,false)
856 | })
857 | }
858 | US_Browser.tagdragstart = function(e) {
859 | tagEL = e.target;
860 | stScreenX = e.screenX;
861 | }
862 | US_Browser.tagdragenter = function(e) {
863 |
864 | }
865 | US_Browser.tagdragover = function(e) {
866 | // 防止默认行为
867 | e.preventDefault();
868 | e.dataTransfer.dropEffect = 'move';
869 | }
870 | US_Browser.tagdragleave = function(e) {
871 | tagELf=false;
872 | }
873 | US_Browser.tagdrop = function(e) {
874 | e.preventDefault();
875 | if (tagEL.nextSibling == this) {
876 | US_Browser.NavContainer.insertBefore(this,tagEL);
877 | } else if (tagEL.previousSibling == this) {
878 | US_Browser.NavContainer.insertBefore(tagEL,this);
879 | } else if (stScreenX < e.screenX) {
880 | US_Browser.NavContainer.insertBefore(tagEL,this.nextSibling)
881 | } else if (stScreenX > e.screenX) {
882 | US_Browser.NavContainer.insertBefore(tagEL,this)
883 | }
884 | tagELf=false;
885 | }
886 | US_Browser.tagdragend = function(e) {
887 | [].forEach.call(US_Browser.tags,function(BrowerList){});
888 | }
889 | US_Browser.tagmousedown = function(e) {
890 | let TagSet = document.getElementById("US_TagSet");
891 | US_Browser.MouseMenu(TagSet,this,event);
892 | }
893 | US_Browser.Head[0].style.color = '#d3d3d3';
894 | US_Browser.Head[1].style.color = '#d3d3d3';
895 | US_Browser.Head[2].style.color = '#d3d3d3';
896 | US_Browser.MenuBack.style.color='#adadad';
897 | US_Browser.MenuGo.style.color='#adadad';
898 | };//浏览器头部事件绑定
899 | US_Browser.Init=function () {//初始化
900 | US_Browser.isready = false
901 | US_Browser.Love = window.localStorage.getItem('arr')
902 | US_Browser.NavContainer=$(".bowerCreaterWindow")[0];//获取标签页ul
903 | US_Browser.BrowerList = $(".BrowerList");// 获取标签页li
904 | US_Browser.MouseMenuMain=$("#webviewBrowserMenu")[0];//获取网页右键菜单
905 | US_Browser.RightMenu=$("#CampusInfoBrowserOnclickMenu")[0];//获取浏览器菜单
906 | US_Browser.RightMenubtn=$("#MouseMenuMainerBtn")[0];//获取浏览器菜单
907 | US_Browser.LoadTips=$(".BrowerTips")[0];
908 | US_Browser.FindContainer=$(".BrowerFind")[0];//查找菜单主题
909 | US_Browser.Elm=$(".BrowerFind *");//查找菜单的子级
910 | US_Browser.MenuBack= $(".US_Browers_Back")[0];
911 | US_Browser.MenuGo=$(".US_Browers_go")[0];
912 | US_Browser.FavoritesMore = $('.FavoritesMore')[0]
913 | US_Browser.MouseMenuMainer = $('.MouseMenuMainer')[0]
914 | US_Browser.DelectBookmark = $('#DelectBookmark')[0]
915 | US_Browser.OpenBookmark = $('#OpenBookmark')[0]
916 | US_Browser.OpenBookmarker = $('#OpenBookmarker')[0]
917 | US_Browser.DelectBookmarktar = ''
918 | US_Browser.Elm[0].onkeyup=function (e) {//查找的input
919 | if(this.value.length&&e.keyCode!==8){//如果存在值
920 | US_Browser.SelecteWebview.findInPage(this.value);
921 | US_Browser.SelecteWebview.FindKey=this.value;
922 | }else{
923 | US_Browser.SelecteWebview.stopFindInPage("keepSelection");
924 | US_Browser.SelecteWebview.FindKey=false;
925 | }
926 | };
927 | US_Browser.Elm[4].onclick=function () {
928 | US_Browser.Elm[2].onclick=US_Browser.Elm[3].onclick=null;
929 | US_Browser.SelecteWebview.FindKey?US_Browser.SelecteWebview.stopFindInPage("keepSelection"):'';
930 | US_Browser.FindContainer.style.display='none';
931 | };
932 | US_Browser.HeadBind();
933 | US_Browser.IpcBind();
934 | US_Browser.Loveitem();
935 | }();
936 | window.onload = function () {
937 | US_Browser.drag();
938 | US_Browser.BrowerList.drag();
939 | }
--------------------------------------------------------------------------------
/public/js/preload.js:
--------------------------------------------------------------------------------
1 | const remote = require('electron').remote;
2 | const {ipcRenderer} = require('electron');
3 | window.addEventListener('contextmenu', function (e) {
4 | e.preventDefault();
5 | if(e.path[0].src||e.path[0].href) {
6 | let data = {
7 | "tag": e.path[0].tagName,
8 | "href": e.path[0].href || null,
9 | "src": e.path[0].src || null,
10 | };
11 | ipcRenderer.send('elm', data)
12 | }
13 | });
--------------------------------------------------------------------------------
/screen/browers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/zjinh/UseStudio.Browser/edcc3a1b5747cf211af9854ecf45cbcfce3946fd/screen/browers.png
--------------------------------------------------------------------------------