PageSourceSearch

https://bfinwr.github.io/about/

html bfinwr.github.io collected 2026-10-03 08:42:25 UTC 26,008 bytes, 1,022 lines download raw bytes

1<!DOCTYPE html>
2
3
4
5  
6
7
8<html class="theme-next pisces use-motion" lang="zh-Hans">
9<head><meta name="generator" content="Hexo 3.9.0">
10  <meta charset="UTF-8">
11<meta http-equiv="X-UA-Compatible" content="IE=edge">
12<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
13<meta name="theme-color" content="#222">
14
15
16
17  
18  
19    
20    
21  
21<script src="/lib/pace/pace.min.js?v=1.0.2"></script>
21
22  <link href="/lib/pace/pace-theme-minimal.min.css?v=1.0.2" rel="stylesheet">
23
24
25
26
27
28
29
30<meta http-equiv="Cache-Control" content="no-transform">
31<meta http-equiv="Cache-Control" content="no-siteapp">
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48  
49  
50  <link href="/lib/fancybox/source/jquery.fancybox.css?v=2.1.5" rel="stylesheet" type="text/css">
51
52
53
54
55  
56  
57  
58  
59
60  
61    
62    
63  
64
65  
66
67  
68
69  
70
71  
72
73  
74    
75    
76    <link href="https://fonts.cat.net/css?family=Monda:300,300italic,400,400italic,700,700italic&subset=latin,latin-ext" rel="stylesheet" type="text/css">
77  
78
79
80
81
82
83
84<link href="/lib/font-awesome/css/font-awesome.min.css?v=4.6.2" rel="stylesheet" type="text/css">
85
86<link href="/css/main.css?v=5.1.4" rel="stylesheet" type="text/css">
87
88
89  <link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon-next.png?v=5.1.4">
90
91
92  <link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32-next.png?v=5.1.4">
93
94
95  <link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16-next.png?v=5.1.4">
96
97
98  <link rel="mask-icon" href="/images/logo.svg?v=5.1.4" color="#222">
99
100
101
102
103
104  <meta name="keywords" content="Hexo, NexT">
105
106
107
108
109  
110
111
112  <link rel="alternate" href="/atom.xml" title="BFInWR' Blog" type="application/atom+xml">
113
114
115
116
117
118
119<meta property="og:type" content="website">
120<meta property="og:title" content="about">
121<meta property="og:url" content="https://bfinwr.github.io/about/index.html">
122<meta property="og:site_name" content="BFInWR&#39; Blog">
123<meta property="og:locale" content="zh-Hans">
124<meta property="og:updated_time" content="2020-01-11T14:08:04.471Z">
125<meta name="twitter:card" content="summary">
126<meta name="twitter:title" content="about">
127
128
129
130<script type="text/javascript" id="hexo.configurations">
131  var NexT = window.NexT || {};
132  var CONFIG = {
133    root: '/',
134    scheme: 'Pisces',
135    version: '5.1.4',
136    sidebar: {"position":"left","display":"post","offset":12,"b2t":false,"scrollpercent":false,"onmobile":false},
137    fancybox: true,
138    tabs: true,
139    motion: {"enable":true,"async":false,"transition":{"post_block":"fadeIn","post_header":"slideDownIn","post_body":"slideDownIn","coll_header":"slideLeftIn","sidebar":"slideUpIn"}},
140    duoshuo: {
141      userId: '0',
142      author: '博主'
143    },
144    algolia: {
145      applicationID: '',
146      apiKey: '',
147      indexName: '',
148      hits: {"per_page":10},
149      labels: {"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"}
150    }
151  };
152</script>
152
153
154
155
156  <link rel="canonical" href="https://bfinwr.github.io/about/">
157
158
159
160
161
162  <title>about | BFInWR' Blog</title>
163  
164
165
166
167
168
169
170
171
172</head>
173
174<body itemscope="" itemtype="http://schema.org/WebPage" lang="zh-Hans">
175
176  
177  
178    
179  
180
181  <div class="container sidebar-position-left page-post-detail">
182    <div class="headband"></div>
183	<a target="_blank" href="https://github.com/wiliam2015">
184		<img style="position: absolute; top: 0; right: 0; border: 0;" src="/images/forkme.png" alt="Fork me on GitHub">
185	</a>
186    <header id="header" class="header" itemscope="" itemtype="http://schema.org/WPHeader">
187      <div class="header-inner"><div class="site-brand-wrapper">
188  <div class="site-meta ">
189    
190
191    <div class="custom-logo-site-title">
192      <a href="/" class="brand" rel="start">
193        <span class="logo-line-before"><i></i></span>
194        <span class="site-title">BFInWR' Blog</span>
195        <span class="logo-line-after"><i></i></span>
196      </a>
197    </div>
198      
199        <p class="site-subtitle">[ Not destory me make stronger ]</p>
200      
201  </div>
202
203  <div class="site-nav-toggle">
204    <button>
205      <span class="btn-bar"></span>
206      <span class="btn-bar"></span>
207      <span class="btn-bar"></span>
208    </button>
209  </div>
210</div>
211
212<nav class="site-nav">
213  
214
215  
216    <ul id="menu" class="menu">
217      
218        
219        <li class="menu-item menu-item-home">
220          <a href="/" rel="section">
221            
222              <i class="menu-item-icon fa fa-fw fa-home"></i> <br>
223            
224            首页
225          </a>
226        </li>
227      
228        
229        <li class="menu-item menu-item-about">
230          <a href="/about/" rel="section">
231            
232              <i class="menu-item-icon fa fa-fw fa-user"></i> <br>
233            
234            关于
235          </a>
236        </li>
237      
238        
239        <li class="menu-item menu-item-tags">
240          <a href="/tags/" rel="section">
241            
242              <i class="menu-item-icon fa fa-fw fa-tags"></i> <br>
243            
244            标签
245          </a>
246        </li>
247      
248        
249        <li class="menu-item menu-item-categories">
250          <a href="/categories/" rel="section">
251            
252              <i class="menu-item-icon fa fa-fw fa-th"></i> <br>
253            
254            分类
255          </a>
256        </li>
257      
258        
259        <li class="menu-item menu-item-archives">
260          <a href="/archives/" rel="section">
261            
262              <i class="menu-item-icon fa fa-fw fa-archive"></i> <br>
263            
264            归档
265          </a>
266        </li>
267      
268
269      
270        <li class="menu-item menu-item-search">
271          
272            <a href="javascript:;" class="popup-trigger">
273          
274            
275              <i class="menu-item-icon fa fa-search fa-fw"></i> <br>
276            
277            搜索
278          </a>
279        </li>
280      
281    </ul>
282  
283
284  
285    <div class="site-search">
286      
287  <div class="popup search-popup local-search-popup">
288  <div class="local-search-header clearfix">
289    <span class="search-icon">
290      <i class="fa fa-search"></i>
291    </span>
292    <span class="popup-btn-close">
293      <i class="fa fa-times-circle"></i>
294    </span>
295    <div class="local-search-input-wrapper">
296      <input autocomplete="off" placeholder="搜索..." spellcheck="false" type="text" id="local-search-input">
297    </div>
298  </div>
299  <div id="local-search-result"></div>
300</div>
301
302
303
304    </div>
305  
306</nav>
307
308
309
310 </div>
311    </header>
312
313    <main id="main" class="main">
314      <div class="main-inner">
315        <div class="content-wrap">
316          <div id="content" class="content">
317            
318
319  <div id="posts" class="posts-expand">
320    
321    
322    
323    <div class="post-block page">
324      <header class="post-header">
325
326	<h1 class="post-title" itemprop="name headline">about</h1>
327
328
329
330</header>
331
332      
333      
334      
335      <div class="post-body">
336        
337        
338          
339        
340      </div>
341      
342      
343      
344    </div>
345    
346    
347    
348  </div>
349
350
351          </div>
352          
353
354
355          
356
357  
358
359
360
361        </div>
362        
363          
364  
365  <div class="sidebar-toggle">
366    <div class="sidebar-toggle-line-wrap">
367      <span class="sidebar-toggle-line sidebar-toggle-line-first"></span>
368      <span class="sidebar-toggle-line sidebar-toggle-line-middle"></span>
369      <span class="sidebar-toggle-line sidebar-toggle-line-last"></span>
370    </div>
371  </div>
372
373  <aside id="sidebar" class="sidebar">
374    
375    <div class="sidebar-inner">
376
377      
378
379      
380
381      <section class="site-overview-wrap sidebar-panel sidebar-panel-active">
382        <div class="site-overview">
383          <div class="site-author motion-element" itemprop="author" itemscope="" itemtype="http://schema.org/Person">
384            
385              <img class="site-author-image" itemprop="image" src="/images/touxiang.png" alt="BFInWR">
386            
387              <p class="site-author-name" itemprop="name">BFInWR</p>
388              <p class="site-description motion-element" itemprop="description"></p>
389          </div>
390
391          <nav class="site-state motion-element">
392
393            
394              <div class="site-state-item site-state-posts">
395              
396                <a href="/archives/">
397              
398                  <span class="site-state-item-count">35</span>
399                  <span class="site-state-item-name">日志</span>
400                </a>
401              </div>
402            
403
404            
405              
406              
407              <div class="site-state-item site-state-categories">
408                <a href="/categories/index.html">
409                  <span class="site-state-item-count">13</span>
410                  <span class="site-state-item-name">分类</span>
411                </a>
412              </div>
413            
414
415            
416              
417              
418              <div class="site-state-item site-state-tags">
419                <a href="/tags/index.html">
420                  <span class="site-state-item-count">40</span>
421                  <span class="site-state-item-name">标签</span>
422                </a>
423              </div>
424            
425
426          </nav>
427
428          
429            <div class="feed-link motion-element">
430              <a href="/atom.xml" rel="alternate">
431                <i class="fa fa-rss"></i>
432                RSS
433              </a>
434            </div>
435          
436
437          
438            <div class="links-of-author motion-element">
439                
440                  <span class="links-of-author-item">
441                    <a href="https://github.com/BFInWR" target="_blank" title="GitHub">
442                      
443                        <i class="fa fa-fw fa-github"></i>GitHub</a>
444                  </span>
445                
446                  <span class="links-of-author-item">
447                    <a href="mailto:[email protected]" target="_blank" title="E-Mail">
448                      
449                        <i class="fa fa-fw fa-envelope"></i>E-Mail</a>
450                  </span>
451                
452            </div>
453          
454
455          
456          
457
458          
459          
460
461          
462
463        </div>
464      </section>
465
466      
467
468      
469
470    </div>
471  </aside>
472
473
474        
475      </div>
476    </main>
477
478    <footer id="footer" class="footer">
479      <div class="footer-inner">
480        <div class="copyright">&copy; <span itemprop="copyrightYear">2020</span>
481  <span class="with-love">
482    <i class="fa fa-leaf"></i>
483  </span>
484  <span class="author" itemprop="copyrightHolder">BFInWR</span>
485
486  
487    <span class="post-meta-divider">|</span>
488    <span class="post-meta-item-icon">
489      <i class="fa fa-area-chart"></i>
490    </span>
491    
492      <span class="post-meta-item-text">Site words total count&#58;</span>
493    
494    <span title="Site words total count">43.5k</span>
495  
496</div>
497
498<!--
499
500  <div class="powered-by">由 <a class="theme-link" target="_blank" href="https://hexo.io">Hexo</a> 强力驱动</div>
501
502
503
504  <span class="post-meta-divider">|</span>
505
506
507
508  <div class="theme-info">主题 &mdash; <a class="theme-link" target="_blank" href="https://github.com/iissnan/hexo-theme-next">NexT.Pisces</a> v5.1.4</div>
509
510-->
511<script async src="https://busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
511
512<div class="powered-by">
513<i class="fa fa-user-md"></i><span id="busuanzi_container_site_uv">
514  本站访客数:<span id="busuanzi_value_site_uv"></span>
515</span>
516</div>
517
518
519        
520
521
522
523
524
525
526
527        
528      </div>
529    </footer>
530
531    
532      <div class="back-to-top">
533        <i class="fa fa-arrow-up"></i>
534        
535      </div>
536    
537
538    
539
540  </div>
541
542  
543
544<script type="text/javascript">
545  if (Object.prototype.toString.call(window.Promise) !== '[object Function]') {
546    window.Promise = null;
547  }
548</script>
548
549
550
551
552
553
554
555
556
557
558  
559
560
561  
562
563
564
565
566
567
568
569
570
571
572
573  
574  
575    
575<script type="text/javascript" src="/lib/jquery/index.js?v=2.1.3"></script>
575
576  
577
578  
579  
580    
580<script type="text/javascript" src="/lib/fastclick/lib/fastclick.min.js?v=1.0.6"></script>
580
581  
582
583  
584  
585    
585<script type="text/javascript" src="/lib/jquery_lazyload/jquery.lazyload.js?v=1.9.7"></script>
585
586  
587
588  
589  
590    
590<script type="text/javascript" src="/lib/velocity/velocity.min.js?v=1.2.1"></script>
590
591  
592
593  
594  
595    
595<script type="text/javascript" src="/lib/velocity/velocity.ui.min.js?v=1.2.1"></script>
595
596  
597
598  
599  
600    
600<script type="text/javascript" src="/lib/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
600
601  
602
603  
604  
605    
605<script type="text/javascript" src="/lib/canvas-nest/canvas-nest.min.js"></script>
605
606  
607
608
609  
610
611
612  
612<script type="text/javascript" src="/js/src/utils.js?v=5.1.4"></script>
612
613
614  
614<script type="text/javascript" src="/js/src/motion.js?v=5.1.4"></script>
614
615
616
617
618  
619  
620
621
622  
622<script type="text/javascript" src="/js/src/affix.js?v=5.1.4"></script>
622
623
624  
624<script type="text/javascript" src="/js/src/schemes/pisces.js?v=5.1.4"></script>
624
625
626
627
628  
629  
629<script type="text/javascript" src="/js/src/scrollspy.js?v=5.1.4"></script>
vendor: 1 bytes, line 629
629
630<script type="text/javascript" src="/js/src/post-details.js?v=5.1.4"></script>
630
631
632
633
634  
635
636
637  
637<script type="text/javascript" src="/js/src/bootstrap.js?v=5.1.4"></script>
637
638
639
640
641  
642
643
644  
645
646
647
648
649	
650
651
652
653
654
655  
656
657
658
659
660
661  
662
663
664
665
666
667
668
669
670
671
672
673
674  
675
676  
676<script type="text/javascript">
677    // Popup Window;
678    var isfetched = false;
679    var isXml = true;
680    // Search DB path;
681    var search_path = "./public/search.xml";
682    if (search_path.length === 0) {
683      search_path = "search.xml";
684    } else if (/json$/i.test(search_path)) {
685      isXml = false;
686    }
687    var path = "/" + search_path;
688    // monitor main search box;
689
690    var onPopupClose = function (e) {
691      $('.popup').hide();
692      $('#local-search-input').val('');
693      $('.search-result-list').remove();
694      $('#no-result').remove();
695      $(".local-search-pop-overlay").remove();
696      $('body').css('overflow', '');
697    }
698
699    function proceedsearch() {
700      $("body")
701        .append('<div class="search-popup-overlay local-search-pop-overlay"></div>')
702        .css('overflow', 'hidden');
703      $('.search-popup-overlay').click(onPopupClose);
704      $('.popup').toggle();
705      var $localSearchInput = $('#local-search-input');
706      $localSearchInput.attr("autocapitalize", "none");
707      $localSearchInput.attr("autocorrect", "off");
708      $localSearchInput.focus();
709    }
710
711    // search function;
712    var searchFunc = function(path, search_id, content_id) {
713      'use strict';
714
715      // start loading animation
716      $("body")
717        .append('<div class="search-popup-overlay local-search-pop-overlay">' +
718          '<div id="search-loading-icon">' +
719          '<i class="fa fa-spinner fa-pulse fa-5x fa-fw"></i>' +
720          '</div>' +
721          '</div>')
722        .css('overflow', 'hidden');
723      $("#search-loading-icon").css('margin', '20% auto 0 auto').css('text-align', 'center');
724
725      $.ajax({
726        url: path,
727        dataType: isXml ? "xml" : "json",
728        async: true,
729        success: function(res) {
730          // get the contents from search data
731          isfetched = true;
732          $('.popup').detach().appendTo('.header-inner');
733          var datas = isXml ? $("entry", res).map(function() {
734            return {
735              title: $("title", this).text(),
736              content: $("content",this).text(),
737              url: $("url" , this).text()
738            };
739          }).get() : res;
740          var input = document.getElementById(search_id);
741          var resultContent = document.getElementById(content_id);
742          var inputEventFunction = function() {
743            var searchText = input.value.trim().toLowerCase();
744            var keywords = searchText.split(/[\s\-]+/);
745            if (keywords.length > 1) {
746              keywords.push(searchText);
747            }
748            var resultItems = [];
749            if (searchText.length > 0) {
750              // perform local searching
751              datas.forEach(function(data) {
752                var isMatch = false;
753                var hitCount = 0;
754                var searchTextCount = 0;
755                var title = data.title.trim();
756                var titleInLowerCase = title.toLowerCase();
757                var content = data.content.trim().replace(/<[^>]+>/g,"");
758                var contentInLowerCase = content.toLowerCase();
759                var articleUrl = decodeURIComponent(data.url);
760                var indexOfTitle = [];
761                var indexOfContent = [];
762                // only match articles with not empty titles
763                if(title != '') {
764                  keywords.forEach(function(keyword) {
765                    function getIndexByWord(word, text, caseSensitive) {
766                      var wordLen = word.length;
767                      if (wordLen === 0) {
768                        return [];
769                      }
770                      var startPosition = 0, position = [], index = [];
771                      if (!caseSensitive) {
772                        text = text.toLowerCase();
773                        word = word.toLowerCase();
774                      }
775                      while ((position = text.indexOf(word, startPosition)) > -1) {
776                        index.push({position: position, word: word});
777                        startPosition = position + wordLen;
778                      }
779                      return index;
780                    }
781
782                    indexOfTitle = indexOfTitle.concat(getIndexByWord(keyword, titleInLowerCase, false));
783                    indexOfContent = indexOfContent.concat(getIndexByWord(keyword, contentInLowerCase, false));
784                  });
785                  if (indexOfTitle.length > 0 || indexOfContent.length > 0) {
786                    isMatch = true;
787                    hitCount = indexOfTitle.length + indexOfContent.length;
788                  }
789                }
790
791                // show search results
792
793                if (isMatch) {
794                  // sort index by position of keyword
795
796                  [indexOfTitle, indexOfContent].forEach(function (index) {
797                    index.sort(function (itemLeft, itemRight) {
798                      if (itemRight.position !== itemLeft.position) {
799                        return itemRight.position - itemLeft.position;
800                      } else {
801                        return itemLeft.word.length - itemRight.word.length;
802                      }
803                    });
804                  });
805
806                  // merge hits into slices
807
808                  function mergeIntoSlice(text, start, end, index) {
809                    var item = index[index.length - 1];
810                    var position = item.position;
811                    var word = item.word;
812                    var hits = [];
813                    var searchTextCountInSlice = 0;
814                    while (position + word.length <= end && index.length != 0) {
815                      if (word === searchText) {
816                        searchTextCountInSlice++;
817                      }
818                      hits.push({position: position, length: word.length});
819                      var wordEnd = position + word.length;
820
821                      // move to next position of hit
822
823                      index.pop();
824                      while (index.length != 0) {
825                        item = index[index.length - 1];
826                        position = item.position;
827                        word = item.word;
828                        if (wordEnd > position) {
829                          index.pop();
830                        } else {
831                          break;
832                        }
833                      }
834                    }
835                    searchTextCount += searchTextCountInSlice;
836                    return {
837                      hits: hits,
838                      start: start,
839                      end: end,
840                      searchTextCount: searchTextCountInSlice
841                    };
842                  }
843
844                  var slicesOfTitle = [];
845                  if (indexOfTitle.length != 0) {
846                    slicesOfTitle.push(mergeIntoSlice(title, 0, title.length, indexOfTitle));
847                  }
848
849                  var slicesOfContent = [];
850                  while (indexOfContent.length != 0) {
851                    var item = indexOfContent[indexOfContent.length - 1];
852                    var position = item.position;
853                    var word = item.word;
854                    // cut out 100 characters
855                    var start = position - 20;
856                    var end = position + 80;
857                    if(start < 0){
858                      start = 0;
859                    }
860                    if (end < position + word.length) {
861                      end = position + word.length;
862                    }
863                    if(end > content.length){
864                      end = content.length;
865                    }
866                    slicesOfContent.push(mergeIntoSlice(content, start, end, indexOfContent));
867                  }
868
869                  // sort slices in content by search text's count and hits' count
870
871                  slicesOfContent.sort(function (sliceLeft, sliceRight) {
872                    if (sliceLeft.searchTextCount !== sliceRight.searchTextCount) {
873                      return sliceRight.searchTextCount - sliceLeft.searchTextCount;
874                    } else if (sliceLeft.hits.length !== sliceRight.hits.length) {
875                      return sliceRight.hits.length - sliceLeft.hits.length;
876                    } else {
877                      return sliceLeft.start - sliceRight.start;
878                    }
879                  });
880
881                  // select top N slices in content
882
883                  var upperBound = parseInt('1');
884                  if (upperBound >= 0) {
885                    slicesOfContent = slicesOfContent.slice(0, upperBound);
886                  }
887
888                  // highlight title and content
889
890                  function highlightKeyword(text, slice) {
891                    var result = '';
892                    var prevEnd = slice.start;
893                    slice.hits.forEach(function (hit) {
894                      result += text.substring(prevEnd, hit.position);
895                      var end = hit.position + hit.length;
896                      result += '<b class="search-keyword">' + text.substring(hit.position, end) + '</b>';
897                      prevEnd = end;
898                    });
899                    result += text.substring(prevEnd, slice.end);
900                    return result;
901                  }
902
903                  var resultItem = '';
904
905                  if (slicesOfTitle.length != 0) {
906                    resultItem += "<li><a href='" + articleUrl + "' class='search-result-title'>" + highlightKeyword(title, slicesOfTitle[0]) + "</a>";
907                  } else {
908                    resultItem += "<li><a href='" + articleUrl + "' class='search-result-title'>" + title + "</a>";
909                  }
910
911                  slicesOfContent.forEach(function (slice) {
912                    resultItem += "<a href='" + articleUrl + "'>" +
913                      "<p class=\"search-result\">" + highlightKeyword(content, slice) +
914                      "...</p>" + "</a>";
915                  });
916
917                  resultItem += "</li>";
918                  resultItems.push({
919                    item: resultItem,
920                    searchTextCount: searchTextCount,
921                    hitCount: hitCount,
922                    id: resultItems.length
923                  });
924                }
925              })
926            };
927            if (keywords.length === 1 && keywords[0] === "") {
928              resultContent.innerHTML = '<div id="no-result"><i class="fa fa-search fa-5x" /></div>'
929            } else if (resultItems.length === 0) {
930              resultContent.innerHTML = '<div id="no-result"><i class="fa fa-frown-o fa-5x" /></div>'
931            } else {
932              resultItems.sort(function (resultLeft, resultRight) {
933                if (resultLeft.searchTextCount !== resultRight.searchTextCount) {
934                  return resultRight.searchTextCount - resultLeft.searchTextCount;
935                } else if (resultLeft.hitCount !== resultRight.hitCount) {
936                  return resultRight.hitCount - resultLeft.hitCount;
937                } else {
938                  return resultRight.id - resultLeft.id;
939                }
940              });
941              var searchResultList = '<ul class=\"search-result-list\">';
942              resultItems.forEach(function (result) {
943                searchResultList += result.item;
944              })
945              searchResultList += "</ul>";
946              resultContent.innerHTML = searchResultList;
947            }
948          }
949
950          if ('auto' === 'auto') {
951            input.addEventListener('input', inputEventFunction);
952          } else {
953            $('.search-icon').click(inputEventFunction);
954            input.addEventListener('keypress', function (event) {
955              if (event.keyCode === 13) {
956                inputEventFunction();
957              }
958            });
959          }
960
961          // remove loading animation
962          $(".local-search-pop-overlay").remove();
963          $('body').css('overflow', '');
964
965          proceedsearch();
966        }
967      });
968    }
969
970    // handle and trigger popup window;
971    $('.popup-trigger').click(function(e) {
972      e.stopPropagation();
973      if (isfetched === false) {
974        searchFunc(path, 'local-search-input', 'local-search-result');
975      } else {
976        proceedsearch();
977      };
978    });
979
980    $('.popup-btn-close').click(onPopupClose);
981    $('.popup').click(function(e){
982      e.stopPropagation();
983    });
984    $(document).on('keyup', function (event) {
985      var shouldDismissSearchPopup = event.which === 27 &&
986        $('.search-popup').is(':visible');
987      if (shouldDismissSearchPopup) {
988        onPopupClose();
989      }
990    });
991  </script>
991
992
993
994
995
996
997  
998
999  
1000
1001  
1002
1003  
1004  
1005
1006  
1007
1008  
1009
1010  
1011
1012  <!--爆炸效果
1013  
1014   <canvas class="fireworks" style="position: fixed;left: 0;top: 0;z-index: 1; pointer-events: none;" ></canvas> 
1015   
1015<script type="text/javascript" src="//cdn.bootcss.com/animejs/2.2.0/anime.min.js"></script>
1015 
1016   
1016<script type="text/javascript" src="/js/src/fireworks.js"></script>
1016
1017  
1018  -->
1019</body>
1020</html>
1021  <!-- 页面点击小红心 -->
1022  
1022<script type="text/javascript" src="/js/src/clicklove.js"></script>
vendor: 1 bytes, line 1022
1022

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.