browser.js 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526
  1. const url = require('url');
  2. const {ipcRenderer} = require('electron');
  3. let ipc=require('electron').ipcRenderer;
  4. /*注册命名空间*/
  5. let US_Browser=[];
  6. Namespace.register("US_Browser");
  7. /*浏览器函数*/
  8. US_Browser.CreatBrower=function (address,flag) {//创建窗口,url,是否为用户选择文件
  9. let http = /^(http)/;
  10. let https = /^(https)/;
  11. let www=/^(www)/;
  12. let m=/^(m)/;
  13. let li=$$("li", {//创建ul下的li
  14. "className": "BrowerList"
  15. }, US_Browser.NavContainer);
  16. let ListBody=$$("div", {//创建li下的div
  17. "className": "BrowerListBody","ripple":""
  18. }, li);
  19. US_Browser.NavContainer.insertBefore(li,US_Browser.AddButton);//把新建标签页按钮追加到ul的li下
  20. li.data={//传窗口地址
  21. "url":address,
  22. "name":null,
  23. "favicons":'public/img/tray/logo.png'
  24. };
  25. ListBody.tag_favicon=$$("img", {//标签页图标
  26. "className": "tag_favicon", "draggable":"false", "alt":""
  27. }, ListBody);
  28. ListBody.tag_favicon.style.display=(address&&address!==null)?"block":"none";
  29. ListBody.tag_favicon.onerror=function () {//不存在时显示的标签页图标
  30. this.src='public/img/tray/logo.png';
  31. webview.tag.data.favicons=this.src;
  32. };
  33. ListBody.Webname=$$("p", {//标签页标题
  34. "className": "Webname","innerHTML":address?"正在加载":"新建标签","draggable":"false"
  35. }, ListBody);
  36. ListBody.tag_close=$$("i", {//标题页关闭按钮
  37. "className":"icon-cancel tag_close"
  38. }, ListBody);
  39. let BrowerContainer=$$("div", {"className":"BrowerContainer"},$("body")[0]);//装载webview
  40. let webview=$$("webview", {//创建webview
  41. "allowpopups":"", "autosize":"on"
  42. }, BrowerContainer);
  43. webview.setAttribute('plugins','');
  44. webview.tag=li;//把li赋给webview标签
  45. webview.addEventListener("new-window",function (e) {//访客页面尝试打开新的浏览器窗口时触发。
  46. US_Browser.BrowersTag=$(".BrowerList");//获取选项卡li
  47. let LIwidth = ((US_Browser.NavContainer.offsetWidth - 120)/US_Browser.BrowersTag.length)-10;//得到每个li标签页宽度
  48. if(US_Browser.BrowersTag.length>=30){//如果如果li标签页大于35
  49. confirm("窗口太多,请关闭一些再使用");//弹出提示
  50. return false;
  51. }
  52. const protocol=url.parse(e.url).protocol;
  53. if(protocol==='http:'||protocol==='https:'||protocol==="about:blank"){
  54. US_Browser.CreatBrower(e.url);//系统的默认浏览器中打开新的URL
  55. }
  56. });
  57. webview.addEventListener("page-favicon-updated",function (e) {//当页面收到图标网址时触发
  58. ListBody.tag_favicon.src=e.favicons[0];
  59. this.tag.data.favicons=e.favicons[0];
  60. });
  61. webview.addEventListener('will-navigate',function (e) {//导航跳转时触发
  62. this.tag.data.url=e.url;
  63. if(webview===US_Browser.SelecteWebview) {
  64. US_Browser.Head[5].value=e.url;
  65. }
  66. });
  67. webview.addEventListener('did-navigate',function (e) {//导航完成时触发
  68. this.tag.data.url=e.url;
  69. if(webview===US_Browser.SelecteWebview) {
  70. US_Browser.Head[5].value=e.url;
  71. }
  72. ListBody.Webname.innerHTML=this.getTitle();
  73. });
  74. webview.addEventListener('did-navigate-in-page',function (e) {//导航完成时触发
  75. this.tag.data.url=e.url;
  76. US_Browser.Head[5].value=e.url;
  77. });
  78. webview.addEventListener('page-title-updated',function (e) {//导航完成时触发
  79. this.tag.data.name=e.title;
  80. ListBody.Webname.innerHTML=e.title;
  81. });
  82. webview.addEventListener('dom-ready',function (e) {//加载完成webview后执行
  83. ListBody.Webname.innerHTML=this.getTitle();//更改webview的title
  84. this.tag.data.name=this.getTitle();
  85. this.state=true;
  86. US_Browser.CheckState(this);
  87. });
  88. webview.addEventListener('did-get-response-details',function (e) {
  89. US_Browser.LoadTips.innerHTML='正在请求:'+e.originalURL;
  90. });
  91. webview.addEventListener('did-start-loading',function (e) {
  92. US_Browser.IsLoading(this,true);
  93. });
  94. webview.addEventListener('did-finish-load',function (e) {
  95. US_Browser.IsLoading(this,false);
  96. US_Browser.LocalStorage(this);
  97. });
  98. webview.addEventListener('did-frame-finish-load',function (e) {
  99. US_Browser.IsLoading(this,false)
  100. });
  101. webview.addEventListener('did-stop-loading',function (e) {
  102. US_Browser.IsLoading(this,false)
  103. });
  104. webview.addEventListener('load-commit',function (e) {
  105. US_Browser.LoadTips.innerHTML=e.url;
  106. });
  107. webview.addEventListener('found-in-page', function(e) {
  108. if (e.result.finalUpdate) {
  109. US_Browser.Elm[1].innerHTML=e.result.activeMatchOrdinal+'/'+e.result.matches;
  110. US_Browser.Elm[2].onclick=function () {
  111. };
  112. US_Browser.Elm[3].onclick=function () {
  113. US_Browser.SelecteWebview.findInPage(US_Browser.Elm[0].value)
  114. };
  115. }
  116. });
  117. webview.fullSrceen=false;
  118. webview.FindKey=false;
  119. webview.onmousedown=function (e) {//webview鼠标事件
  120. US_Browser.MouseMenu(US_Browser.MouseMenuMain,this,e);//右键显示创建应用菜单
  121. };
  122. ListBody.tag_close.onclick=function () {//点击标题页关闭按钮
  123. event.stopPropagation();
  124. let closeArr = $(".tag_close");
  125. closeArr[0].index = 0;//设置li下第一个关闭图标的index
  126. if(ListBody.tag_close.index === 0){
  127. webview.tag.nextSibling.onclick();//点击当前li下一个
  128. }else{
  129. webview.tag.previousSibling.onclick();//点击当前li上一个
  130. }
  131. if(ListBody.offsetWidth<50){
  132. ListBody.Webname.style.display = "none";
  133. }else{
  134. ListBody.Webname.style.display = "block";
  135. }
  136. US_Browser.NavContainer.removeChild(webview.tag);//移除当前li
  137. document.body.removeChild(BrowerContainer);//移除当前webview
  138. };
  139. webview.src=address;//给webview的src传值
  140. US_Browser.Bind();
  141. ListBody.click();//点击li下的包裹节点
  142. if(flag){
  143. let pattern = new RegExp("^[a-zA-Z]:/[a-zA-Z_0-9//]*");
  144. if(pattern.test(address)){
  145. webview.src = "file:///"+address;
  146. }else {
  147. if (address.match(http) || address.match(https)) {//判断是否存在http或https
  148. webview.src = address;//给webview的src传值
  149. } else if (this.value.match(www) || this.value.match(m)) {
  150. webview.src = 'http://' + this.value;//给webview的src传值
  151. } else {
  152. webview.src = 'https://www.baidu.com/s?cl=3&wd=' + this.value;//给webview的src传值
  153. }
  154. }
  155. webview.tag.getElementsByTagName('img')[0].style.display = "block";//标签页图标显示
  156. }
  157. };//创建一个新的浏览器选项卡
  158. US_Browser.MouseMenu=function (menu_main,data,e,flag) {//右键菜单事件
  159. let createNode=document.body;//获取第一和参数父元素
  160. let MouseMenuMain=$('.MouseMenuMain');//获取右键菜单事件的ul元素
  161. for(let i=0;i<MouseMenuMain.length;i++){//隐藏右键菜单事件所有
  162. MouseMenuMain[i].style.display='none';
  163. }
  164. document.onmouseup=function () {//鼠标事件后触发
  165. if (e.button === 2||flag) {
  166. if (!flag) {
  167. menu_main.style.left = e.pageX + -parseFloat(createNode.getBoundingClientRect().left) + createNode.offsetLeft + 'px';//菜单定位横坐标
  168. menu_main.style.top = e.pageY + -parseFloat(createNode.getBoundingClientRect().top) + createNode.offsetTop + 'px';//菜单定位纵坐标
  169. if (menu_main.getBoundingClientRect().left + menu_main.offsetHeight - createNode.getBoundingClientRect().left > createNode.offsetWidth) {//判断距左位置
  170. menu_main.style.left = menu_main.style.left.split('px')[0] - menu_main.offsetWidth + 'px';//距左多少
  171. }
  172. if (menu_main.getBoundingClientRect().top + menu_main.offsetHeight - createNode.getBoundingClientRect().top > createNode.offsetHeight) {//判断距上位置
  173. menu_main.style.top = menu_main.style.top.split('px')[0] - menu_main.offsetHeight + 'px';//距上多少
  174. }
  175. }
  176. menu_main.style.display = 'block';//显示菜单
  177. document.onmouseup = null;//清空
  178. }
  179. };
  180. menu_main.onclick=createNode.onmousewheel=function () {//执行右键菜单隐藏
  181. for(let i=0;i<MouseMenuMain.length;i++){
  182. MouseMenuMain[i].style.display='none';//隐藏
  183. }
  184. };
  185. };//右键菜单函数
  186. US_Browser.CheckState=function(webview){
  187. if(webview.canGoBack()){//判断是否可以后退
  188. US_Browser.Head[0].style.color = '#5a5a5a';
  189. }else{
  190. US_Browser.Head[0].style.color = '#d3d3d3';
  191. }
  192. if(webview.canGoForward()){//判断是否可以前进
  193. US_Browser.Head[1].style.color = '#5a5a5a';
  194. }else{
  195. US_Browser.Head[1].style.color = '#d3d3d3';
  196. }
  197. if(!US_Browser.Head[5].value.length){
  198. US_Browser.Head[2].style.color = '#d3d3d3';
  199. }else{
  200. US_Browser.Head[2].style.color = '#5a5a5a';
  201. }
  202. };//检查标签是否可后退前进
  203. US_Browser.LocalStorage=function(webview){
  204. let time = (new Date()).valueOf();
  205. let today = new Date().toLocaleDateString();
  206. let datas={
  207. url:webview.src,
  208. title:webview.tag.data.name,
  209. favicons:webview.tag.data.favicons,
  210. data:new Date().toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay()),
  211. time:new Date().toLocaleTimeString(),
  212. key:time
  213. };
  214. if(localStorage[today]){
  215. let aa = JSON.parse(localStorage[today]);
  216. let bb = JSON.parse(JSON.stringify(datas));
  217. aa.push(bb);
  218. let Storage = JSON.stringify(aa);
  219. localStorage.removeItem(today);
  220. localStorage.setItem(today, Storage);
  221. }else{
  222. localStorage.setItem(today,[]);
  223. localStorage[today]="["+JSON.stringify(datas)+"]";
  224. }
  225. };//本地存储操作
  226. US_Browser.IconLock = function(){//判断是否为https
  227. if(US_Browser.Head[5].value.indexOf('https')>-1){//判断搜索框是否有https
  228. US_Browser.LockIcon.style.color = '#035816';
  229. }else {
  230. US_Browser.LockIcon.style.color = '#d3d3d3';
  231. }
  232. };
  233. /*浏览器按钮函数*/
  234. US_Browser.about=function () {
  235. ipc.send('AboutUsW-show');
  236. };
  237. US_Browser.ShowHistory=function(){
  238. ipc.send('BrowserHistory-show');
  239. };
  240. US_Browser.Feedback=function(){
  241. ipc.send('BrowserFeedback-show');
  242. };
  243. US_Browser.ClearCache=function(){
  244. localStorage.clear();
  245. };
  246. US_Browser.CreatBrowerWindow=function(){
  247. ipc.send('newBrowersWindow')
  248. };
  249. US_Browser.Print=function(){
  250. US_Browser.SelecteWebview.print();
  251. };
  252. US_Browser.DevTools=function(){
  253. if(US_Browser.SelecteWebview.isDevToolsOpened()){//判断是否存在
  254. US_Browser.SelecteWebview.closeDevTools();//关闭开发者工具
  255. }
  256. US_Browser.SelecteWebview.openDevTools();//打开开发者工具
  257. };
  258. US_Browser.SourceCode = function () {//查看源代码
  259. US_Browser.CreatBrower("view-source:"+US_Browser.Head[5].value);
  260. };
  261. US_Browser.Exit=function(){
  262. ipc.send('window-all-closed');
  263. };
  264. US_Browser.goBack = function(){//执行后退
  265. US_Browser.SelecteWebview.goBack();
  266. };
  267. US_Browser.goForward = function(){//执行前进
  268. US_Browser.SelecteWebview.goForward();
  269. };
  270. US_Browser.CampusInfo=function(){
  271. ipc.send('CampusInfo')
  272. };
  273. US_Browser.reFresh = function(){//执行刷洗
  274. if(US_Browser.SelecteWebview.state) {
  275. US_Browser.SelecteWebview.reload();
  276. }
  277. };
  278. US_Browser.Stop=function(){
  279. US_Browser.SelecteWebview.stop();
  280. };
  281. US_Browser.IsLoading=function(webview,flag){
  282. if(flag) {
  283. if (webview === US_Browser.SelecteWebview) {
  284. US_Browser.Head[2].className = 'icon-cancel';
  285. } else {
  286. US_Browser.Head[2].className = 'icon-cw';
  287. }
  288. US_Browser.LoadTips.style.display='block';
  289. }else {
  290. if(webview===US_Browser.SelecteWebview) {
  291. US_Browser.Head[2].className='icon-cw';
  292. }else{
  293. US_Browser.Head[2].className='icon-cancel';
  294. }
  295. US_Browser.LoadTips.innerHTML='';
  296. US_Browser.LoadTips.style.display='none';
  297. }
  298. };
  299. /*浏览器初始化*/
  300. US_Browser.IpcBind=function(){
  301. ipcRenderer.on('flag', function(event, message){//接收用户指定的文件
  302. if(message==='-1'){
  303. US_Browser.CreatBrower('https://www.baidu.com');//开始进入一个页面
  304. }
  305. });
  306. ipcRenderer.on('url', function(event, message){//接收用户指定的文件
  307. if(message){
  308. US_Browser.CreatBrower(message,true);//打开用户请求的页面
  309. }
  310. });
  311. ipcRenderer.on('open-history', function(event, message){//接收历史记录地址
  312. if(message){
  313. US_Browser.CreatBrower(message,true);//打开用户请求的页面
  314. }
  315. });
  316. ipcRenderer.on('download-progress',function (event,message) {
  317. console.log(message)
  318. })
  319. };//ipc通信绑定
  320. US_Browser.Bind=function(){//绑定
  321. US_Browser.BrowerListBody = $(".BrowerListBody");
  322. US_Browser.BrowersTag=$(".BrowerList");//获取选项卡li
  323. US_Browser.BrowerContainer=$(".BrowerContainer");//获取webview
  324. US_Browser.SelecteWebview=US_Browser.BrowerContainer[0].children[0];
  325. for(let i=0;i<US_Browser.BrowersTag.length;i++){//对选项卡及webview进行操作
  326. (function (i) {
  327. US_Browser.BrowersTag[i].onclick=function () {
  328. for(let j=0;j<US_Browser.BrowersTag.length;j++){
  329. US_Browser.BrowersTag[j].className='BrowerList';
  330. US_Browser.BrowersTag[0].className='BrowerList Listindex';
  331. US_Browser.BrowerContainer[j].style.opacity='0';
  332. US_Browser.BrowerContainer[j].style.zIndex='-1';
  333. }
  334. US_Browser.BrowersTag[i].className+=' BrowerActive';
  335. US_Browser.BrowerContainer[i].style.opacity='1';
  336. US_Browser.BrowerContainer[i].style.zIndex='1';
  337. US_Browser.Head[5].value=this.data.url;
  338. US_Browser.SelecteWebview=US_Browser.BrowerContainer[i].children[0];
  339. if(US_Browser.SelecteWebview.FindKey){
  340. US_Browser.FindContainer.style.display='block';
  341. US_Browser.Elm[0].value=US_Browser.SelecteWebview.FindKey;
  342. US_Browser.SelecteWebview.findInPage(US_Browser.Elm[0].value);
  343. }else{
  344. US_Browser.Elm[4].click();
  345. }
  346. US_Browser.IconLock();//判断是否为https
  347. }
  348. })(i);
  349. }
  350. };//标签页事件绑定
  351. US_Browser.HeadBind=function(){
  352. let http = /^(http)/;
  353. let https = /^(https)/;
  354. let www=/^(www)/;
  355. let m=/^(m)/;
  356. let isBig=true;//窗口放大还原标示
  357. US_Browser.AddButton=$(".BrowwerAdd")[0];//获取新建标签页按钮
  358. US_Browser.ControlButton=$(".browerHeaderControl button");
  359. US_Browser.ControlButton[0].onclick=function(){//最小化
  360. ipc.send('hide-window');
  361. };
  362. US_Browser.ControlButton[1].onclick=function(){//最大化
  363. if(isBig){
  364. ipc.send('show-window');
  365. this.className='icon-window-restore max';
  366. $(".bowerCreaterWindow")[0].style.padding = "0";
  367. }else{
  368. ipc.send('orignal-window');
  369. this.className='icon-window-maximize max';
  370. $(".bowerCreaterWindow")[0].style.padding = "15px 0 0";
  371. }
  372. isBig=!isBig;
  373. };
  374. US_Browser.ControlButton[2].onclick=function(){//关闭窗口
  375. US_Browser.Exit();
  376. };
  377. US_Browser.Head=$(".BrowerHead *");
  378. US_Browser.Head[0].onclick=function () {
  379. US_Browser.goBack()
  380. };
  381. US_Browser.Head[1].onclick=function () {
  382. US_Browser.goForward()
  383. };
  384. US_Browser.Head[2].onclick=function () {
  385. if(this.className==='icon-cw') {
  386. US_Browser.reFresh()
  387. }else{
  388. US_Browser.Stop();
  389. this.className='icon-cw';
  390. }
  391. };
  392. US_Browser.LockIcon=US_Browser.Head[4];
  393. US_Browser.Head[5].tabIndex=-1;
  394. US_Browser.Head[5].onkeydown=function (e) {//获取搜索框值
  395. if(e.keyCode===13){//keycode为13
  396. if(this.value.length){//如果存在值
  397. if(this.value.match(http) || this.value.match(https)){//判断是否存在http或https
  398. US_Browser.SelecteWebview.src=this.value;//给webview的src传值
  399. }else if(this.value.match(www)||this.value.match(m)){
  400. US_Browser.SelecteWebview.src='http://'+this.value;//给webview的src传值
  401. }else {
  402. US_Browser.SelecteWebview.src='https://www.baidu.com/s?cl=3&wd='+this.value;//给webview的src传值
  403. }
  404. US_Browser.SelecteWebview.tag.getElementsByTagName('img')[0].style.display = "block";//标签页图标显示
  405. }
  406. this.blur();
  407. }
  408. };
  409. US_Browser.Head[6].onmousedown=function (event) {//点击菜单
  410. US_Browser.MouseMenu(US_Browser.RightMenu,this,event,true);//右键显示创建应用菜单
  411. };
  412. US_Browser.AddButton.onclick= function (){//点击新建标签页
  413. US_Browser.BrowersTag=$(".BrowerList");//获取选项卡li
  414. if(US_Browser.BrowersTag.length>=30){//如果如果li标签页大于35
  415. alert("窗口太多,请关闭一些再使用");//弹出提示
  416. return false;
  417. }
  418. US_Browser.CreatBrower(null);
  419. US_Browser.Head[5].focus();
  420. };
  421. window.addEventListener('dragleave',function (e) {
  422. e.preventDefault();
  423. return false;
  424. });
  425. window.addEventListener('dragover',function (e) {
  426. e.preventDefault();
  427. return false;
  428. });
  429. window.addEventListener('dragenter',function (e) {
  430. e.preventDefault();
  431. return false;
  432. });
  433. window.addEventListener( "drop", function (e) {
  434. e.preventDefault();
  435. return false;
  436. }, false );
  437. document.body.onkeydown=function(evt){
  438. evt = (evt) ? evt : window.event;
  439. if(evt.keyCode===112 ){
  440. US_Browser.about();
  441. }else if(evt.keyCode===114 ) {
  442. }else if(evt.keyCode===116){
  443. if(US_Browser.Head[2].className==='icon-cw') {
  444. US_Browser.reFresh()
  445. }else{
  446. US_Browser.Stop();
  447. US_Browser.Head[2].className='icon-cw';
  448. }
  449. }
  450. else if(evt.keyCode===117){
  451. if(document.activeElement.id===US_Browser.Head[5].id){
  452. US_Browser.Head[5].blur();
  453. }else{
  454. US_Browser.Head[5].focus();
  455. US_Browser.Head[5].select();
  456. }
  457. }else if(evt.keyCode===121){
  458. US_Browser.RightMenu.style.display=US_Browser.RightMenu.offsetWidth?'none':'block';
  459. }else if(evt.keyCode===122){
  460. if(US_Browser.SelecteWebview.fullSrceen){
  461. if (document.exitFullscreen) {
  462. document.exitFullscreen();
  463. }
  464. else if (document.mozCancelFullScreen) {
  465. document.mozCancelFullScreen();
  466. }
  467. else if (document.webkitCancelFullScreen) {
  468. document.webkitCancelFullScreen();
  469. }
  470. else if (document.msExitFullscreen) {
  471. document.msExitFullscreen();
  472. }
  473. US_Browser.SelecteWebview.fullSrceen=false;
  474. }else{
  475. US_Browser.SelecteWebview.webkitRequestFullscreen();
  476. US_Browser.SelecteWebview.fullSrceen=true
  477. }
  478. }else if (evt.keyCode===123) {
  479. US_Browser.DevTools();
  480. }else if((evt.ctrlKey)&&(evt.shiftKey)&&(evt.keyCode===73)){
  481. US_Browser.DevTools();
  482. }else if((evt.ctrlKey)&&(evt.keyCode===87)){
  483. if($(".BrowerContainer").length>0&&US_Browser.SelecteWebview.tag.children[0].tag_favicon.offsetWidth) {
  484. US_Browser.SelecteWebview.tag.children[0].tag_close.click();
  485. }
  486. }else if((evt.ctrlKey)&&(evt.keyCode===70)){
  487. //搜索
  488. if(US_Browser.FindContainer.offsetWidth) {
  489. US_Browser.FindContainer.style.display = 'none';
  490. US_Browser.Elm[0].blur();
  491. }else {
  492. US_Browser.FindContainer.style.display = 'block';
  493. US_Browser.Elm[0].value = '';
  494. US_Browser.Elm[1].innerHTML = '0/0';
  495. US_Browser.Elm[0].focus();
  496. }
  497. }
  498. };
  499. };//浏览器头部事件绑定
  500. US_Browser.Init=function () {//初始化
  501. US_Browser.NavContainer=$(".bowerCreaterWindow")[0];//获取标签页ul
  502. US_Browser.MouseMenuMain=$("#webviewBrowserMenu")[0];//获取网页右键菜单
  503. US_Browser.RightMenu=$("#CampusInfoBrowserOnclickMenu")[0];//获取浏览器菜单
  504. US_Browser.LoadTips=$(".BrowerTips")[0];
  505. US_Browser.FindContainer=$(".BrowerFind")[0];//查找菜单主题
  506. US_Browser.Elm=$(".BrowerFind *");//查找菜单的子级
  507. US_Browser.Elm[0].onkeyup=function (e) {//查找的input
  508. if(this.value.length&&e.keyCode!==8){//如果存在值
  509. US_Browser.SelecteWebview.findInPage(this.value);
  510. US_Browser.SelecteWebview.FindKey=this.value;
  511. }else{
  512. US_Browser.SelecteWebview.stopFindInPage("keepSelection");
  513. US_Browser.SelecteWebview.FindKey=false;
  514. }
  515. };
  516. US_Browser.Elm[4].onclick=function () {
  517. US_Browser.Elm[2].onclick=US_Browser.Elm[3].onclick=null;
  518. US_Browser.SelecteWebview.FindKey?US_Browser.SelecteWebview.stopFindInPage("keepSelection"):'';
  519. US_Browser.FindContainer.style.display='none';
  520. };
  521. US_Browser.HeadBind();
  522. US_Browser.IpcBind();
  523. }();