2018_10_28_01.html 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. <!DOCTYPE html>
  2. <html lang="en-US">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <title>动态替换图片 | 看白鹿的博客</title>
  7. <meta name="description" content="只有敢于尝试,才能品味人生.">
  8. <link rel="icon" href="/logo.png">
  9. <link rel="preload" href="/assets/css/0.styles.085a33b3.css" as="style"><link rel="preload" href="/assets/js/app.6fdf7a1a.js" as="script"><link rel="preload" href="/assets/js/3.d927fe3f.js" as="script"><link rel="preload" href="/assets/js/85.c322a56a.js" as="script"><link rel="preload" href="/assets/js/54.80d9ca6b.js" as="script"><link rel="prefetch" href="/assets/js/10.ddd49d9f.js"><link rel="prefetch" href="/assets/js/100.62640b93.js"><link rel="prefetch" href="/assets/js/101.c8cf9c2d.js"><link rel="prefetch" href="/assets/js/102.002e609f.js"><link rel="prefetch" href="/assets/js/103.33efbaf6.js"><link rel="prefetch" href="/assets/js/104.9fdf3298.js"><link rel="prefetch" href="/assets/js/105.b80b4908.js"><link rel="prefetch" href="/assets/js/106.a0d0c126.js"><link rel="prefetch" href="/assets/js/107.9e4690cd.js"><link rel="prefetch" href="/assets/js/108.b26f8cda.js"><link rel="prefetch" href="/assets/js/109.aab82647.js"><link rel="prefetch" href="/assets/js/11.031f5987.js"><link rel="prefetch" href="/assets/js/110.fbc1b463.js"><link rel="prefetch" href="/assets/js/111.8d5115fe.js"><link rel="prefetch" href="/assets/js/112.1dc7c881.js"><link rel="prefetch" href="/assets/js/113.e98045fa.js"><link rel="prefetch" href="/assets/js/114.ec80549c.js"><link rel="prefetch" href="/assets/js/115.bba179d7.js"><link rel="prefetch" href="/assets/js/116.87a757cd.js"><link rel="prefetch" href="/assets/js/117.364a4760.js"><link rel="prefetch" href="/assets/js/118.bd293cf4.js"><link rel="prefetch" href="/assets/js/119.03946716.js"><link rel="prefetch" href="/assets/js/12.c5ff764f.js"><link rel="prefetch" href="/assets/js/13.69975414.js"><link rel="prefetch" href="/assets/js/14.1619fdb3.js"><link rel="prefetch" href="/assets/js/15.9e237ec5.js"><link rel="prefetch" href="/assets/js/16.a73badee.js"><link rel="prefetch" href="/assets/js/17.0b109a58.js"><link rel="prefetch" href="/assets/js/18.bcafe2ac.js"><link rel="prefetch" href="/assets/js/19.ea9061ed.js"><link rel="prefetch" href="/assets/js/20.87589e25.js"><link rel="prefetch" href="/assets/js/21.8976c280.js"><link rel="prefetch" href="/assets/js/22.36113299.js"><link rel="prefetch" href="/assets/js/23.9fff152f.js"><link rel="prefetch" href="/assets/js/24.dd9701a5.js"><link rel="prefetch" href="/assets/js/25.407b9d73.js"><link rel="prefetch" href="/assets/js/26.11609a9f.js"><link rel="prefetch" href="/assets/js/27.735b1444.js"><link rel="prefetch" href="/assets/js/28.3e289e6e.js"><link rel="prefetch" href="/assets/js/29.98df1858.js"><link rel="prefetch" href="/assets/js/30.3984473c.js"><link rel="prefetch" href="/assets/js/31.a0f2300e.js"><link rel="prefetch" href="/assets/js/32.d40cdab2.js"><link rel="prefetch" href="/assets/js/33.e1afcf45.js"><link rel="prefetch" href="/assets/js/34.2da6ccab.js"><link rel="prefetch" href="/assets/js/35.6d2010cc.js"><link rel="prefetch" href="/assets/js/36.fcb134e9.js"><link rel="prefetch" href="/assets/js/37.19d87fca.js"><link rel="prefetch" href="/assets/js/38.867c7402.js"><link rel="prefetch" href="/assets/js/39.1c684a15.js"><link rel="prefetch" href="/assets/js/4.ae3881f6.js"><link rel="prefetch" href="/assets/js/40.6739a691.js"><link rel="prefetch" href="/assets/js/41.62268f83.js"><link rel="prefetch" href="/assets/js/42.6a42cae0.js"><link rel="prefetch" href="/assets/js/43.96f9b56c.js"><link rel="prefetch" href="/assets/js/44.de29fc31.js"><link rel="prefetch" href="/assets/js/45.b827bf31.js"><link rel="prefetch" href="/assets/js/46.d396acf1.js"><link rel="prefetch" href="/assets/js/47.1ac1f013.js"><link rel="prefetch" href="/assets/js/48.641f65ec.js"><link rel="prefetch" href="/assets/js/49.bba862e8.js"><link rel="prefetch" href="/assets/js/5.cdbf7455.js"><link rel="prefetch" href="/assets/js/50.36aee47e.js"><link rel="prefetch" href="/assets/js/51.473395d7.js"><link rel="prefetch" href="/assets/js/52.c37a3a9e.js"><link rel="prefetch" href="/assets/js/53.d032f8db.js"><link rel="prefetch" href="/assets/js/55.e9e747b1.js"><link rel="prefetch" href="/assets/js/56.c739c496.js"><link rel="prefetch" href="/assets/js/57.6f365715.js"><link rel="prefetch" href="/assets/js/58.871b6c90.js"><link rel="prefetch" href="/assets/js/59.bfe555b8.js"><link rel="prefetch" href="/assets/js/6.8d2d716e.js"><link rel="prefetch" href="/assets/js/60.c7a0f2fa.js"><link rel="prefetch" href="/assets/js/61.78286769.js"><link rel="prefetch" href="/assets/js/62.7bf4a98a.js"><link rel="prefetch" href="/assets/js/63.903bf427.js"><link rel="prefetch" href="/assets/js/64.2f9e3d98.js"><link rel="prefetch" href="/assets/js/65.8748ec4f.js"><link rel="prefetch" href="/assets/js/66.2a60bc9d.js"><link rel="prefetch" href="/assets/js/67.a047e4a2.js"><link rel="prefetch" href="/assets/js/68.d1b501c2.js"><link rel="prefetch" href="/assets/js/69.8e88b367.js"><link rel="prefetch" href="/assets/js/7.4a26cc5b.js"><link rel="prefetch" href="/assets/js/70.77ff76ce.js"><link rel="prefetch" href="/assets/js/71.82881d5c.js"><link rel="prefetch" href="/assets/js/72.bbc73b16.js"><link rel="prefetch" href="/assets/js/73.7e284f13.js"><link rel="prefetch" href="/assets/js/74.35b51c68.js"><link rel="prefetch" href="/assets/js/75.fe036eaa.js"><link rel="prefetch" href="/assets/js/76.a8ba1657.js"><link rel="prefetch" href="/assets/js/77.599112bf.js"><link rel="prefetch" href="/assets/js/78.11bef8e9.js"><link rel="prefetch" href="/assets/js/79.990c1548.js"><link rel="prefetch" href="/assets/js/8.c2f0bf16.js"><link rel="prefetch" href="/assets/js/80.e889bc7c.js"><link rel="prefetch" href="/assets/js/81.2cc6a3c7.js"><link rel="prefetch" href="/assets/js/82.50d1bd4a.js"><link rel="prefetch" href="/assets/js/83.bc44a308.js"><link rel="prefetch" href="/assets/js/84.e233c4ac.js"><link rel="prefetch" href="/assets/js/86.afef70cd.js"><link rel="prefetch" href="/assets/js/87.4dfc8ea6.js"><link rel="prefetch" href="/assets/js/88.b0778008.js"><link rel="prefetch" href="/assets/js/89.9d32b063.js"><link rel="prefetch" href="/assets/js/9.2eef732d.js"><link rel="prefetch" href="/assets/js/90.964433f3.js"><link rel="prefetch" href="/assets/js/91.f3a29d8d.js"><link rel="prefetch" href="/assets/js/92.9f5f6d07.js"><link rel="prefetch" href="/assets/js/93.c39446ef.js"><link rel="prefetch" href="/assets/js/94.c404c775.js"><link rel="prefetch" href="/assets/js/95.e66ccec2.js"><link rel="prefetch" href="/assets/js/96.6cfb5c07.js"><link rel="prefetch" href="/assets/js/97.4369b840.js"><link rel="prefetch" href="/assets/js/98.da5a7845.js"><link rel="prefetch" href="/assets/js/99.c99e6075.js"><link rel="prefetch" href="/assets/js/vendors~docsearch.f9add12f.js">
  10. <link rel="stylesheet" href="/assets/css/0.styles.085a33b3.css">
  11. </head>
  12. <body>
  13. <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><!----> <span class="site-name">看白鹿的博客</span></a> <div class="links"><form id="search-form" role="search" class="algolia-search-wrapper search-box"><input id="algolia-search-input" class="search-query"></form> <nav class="nav-links can-hide"><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="前端" class="dropdown-title"><span class="title">前端</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/CSS/" class="nav-link">CSS</a></li><li class="dropdown-item"><!----> <a href="/FLUTTER/" class="nav-link">flutter</a></li><li class="dropdown-item"><!----> <a href="/GIT/" class="nav-link">GIT</a></li><li class="dropdown-item"><!----> <a href="/JavaScript/" class="nav-link router-link-active">JavaScript</a></li><li class="dropdown-item"><!----> <a href="/REACT/" class="nav-link">react</a></li><li class="dropdown-item"><!----> <a href="/VUE/" class="nav-link">vue</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="后台" class="dropdown-title"><span class="title">后台</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/NODE/" class="nav-link">node</a></li><li class="dropdown-item"><!----> <a href="/UBUNTU/" class="nav-link">ubuntu</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="其他" class="dropdown-title"><span class="title">其他</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/IDE/" class="nav-link">IDE</a></li><li class="dropdown-item"><!----> <a href="/About/WHY.html" class="nav-link">待了解</a></li><li class="dropdown-item"><!----> <a href="/INTERVIEW/" class="nav-link">面试</a></li></ul></div></div><div class="nav-item"><a href="https://github.com/Johnhong9527" target="_blank" rel="noopener noreferrer" class="nav-link external">
  14. GitHub
  15. <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <!----></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="前端" class="dropdown-title"><span class="title">前端</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/CSS/" class="nav-link">CSS</a></li><li class="dropdown-item"><!----> <a href="/FLUTTER/" class="nav-link">flutter</a></li><li class="dropdown-item"><!----> <a href="/GIT/" class="nav-link">GIT</a></li><li class="dropdown-item"><!----> <a href="/JavaScript/" class="nav-link router-link-active">JavaScript</a></li><li class="dropdown-item"><!----> <a href="/REACT/" class="nav-link">react</a></li><li class="dropdown-item"><!----> <a href="/VUE/" class="nav-link">vue</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="后台" class="dropdown-title"><span class="title">后台</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/NODE/" class="nav-link">node</a></li><li class="dropdown-item"><!----> <a href="/UBUNTU/" class="nav-link">ubuntu</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="其他" class="dropdown-title"><span class="title">其他</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/IDE/" class="nav-link">IDE</a></li><li class="dropdown-item"><!----> <a href="/About/WHY.html" class="nav-link">待了解</a></li><li class="dropdown-item"><!----> <a href="/INTERVIEW/" class="nav-link">面试</a></li></ul></div></div><div class="nav-item"><a href="https://github.com/Johnhong9527" target="_blank" rel="noopener noreferrer" class="nav-link external">
  16. GitHub
  17. <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <!----></nav> <ul class="sidebar-links"><li><a href="/JavaScript/" class="sidebar-link">JS 目录</a></li><li><a href="/JavaScript/2018_10_29_02.html" class="sidebar-link">代码收集</a></li><li><a href="/JavaScript/2018_10_28_01.html" class="active sidebar-link">动态替换图片</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#最简单的示例" class="sidebar-link">最简单的示例</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#稍微复杂一点" class="sidebar-link">稍微复杂一点</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#更新说明" class="sidebar-link">更新说明:</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#目的:" class="sidebar-link">目的:</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#展现方式:" class="sidebar-link">展现方式:</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#使用技巧" class="sidebar-link">使用技巧</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#项目结构:" class="sidebar-link">项目结构:</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#index-html-详解" class="sidebar-link">index.html 详解</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#模态框" class="sidebar-link">模态框</a></li><li class="sidebar-sub-header"><a href="/JavaScript/2018_10_28_01.html#index-js-详解" class="sidebar-link">index.js 详解</a></li></ul></li><li><a href="/JavaScript/2018_11_02_01.html" class="sidebar-link">战舰游戏</a></li><li><a href="/JavaScript/2018_11_02_02.html" class="sidebar-link">原理</a></li><li><a href="/JavaScript/2018_11_02_03.html" class="sidebar-link">匿名函数和闭包</a></li><li><a href="/JavaScript/2018_11_02_04.html" class="sidebar-link">instanceof运算符</a></li><li><a href="/JavaScript/2018_11_02_05.html" class="sidebar-link">JavaScript 事件流</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="动态替换图片"><a href="#动态替换图片" class="header-anchor">#</a> 动态替换图片</h1> <h2 id="最简单的示例"><a href="#最简单的示例" class="header-anchor">#</a> 最简单的示例</h2> <div class="language-html line-numbers-mode"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>img-wrapper<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  18. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">'</span>replacement<span class="token punctuation">'</span></span><span class="token punctuation">&gt;</span></span>
  19. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">'</span>[图片1]<span class="token punctuation">'</span></span> <span class="token punctuation">&gt;</span></span>
  20. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  21. <span class="token comment">&lt;!-----------------&gt;</span>
  22. <span class="token comment">&lt;!--忽略同类型代码.--&gt;</span>
  23. <span class="token comment">&lt;!-----------------&gt;</span>
  24. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">'</span>replacement<span class="token punctuation">'</span></span><span class="token punctuation">&gt;</span></span>
  25. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">'</span>[图片10]<span class="token punctuation">'</span></span><span class="token punctuation">&gt;</span></span>
  26. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  27. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  28. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br></div></div><div class="language-css line-numbers-mode"><pre class="language-css"><code><span class="token selector">.img-wrapper</span> <span class="token punctuation">{</span>
  29. <span class="token property">margin-top</span><span class="token punctuation">:</span> 30px<span class="token punctuation">;</span>
  30. <span class="token property">display</span><span class="token punctuation">:</span> flex<span class="token punctuation">;</span>
  31. <span class="token property">justify-content</span><span class="token punctuation">:</span> space-around<span class="token punctuation">;</span>
  32. <span class="token punctuation">}</span>
  33. <span class="token selector">.img-wrapper &gt; div</span> <span class="token punctuation">{</span>
  34. <span class="token property">flex</span><span class="token punctuation">:</span> 0 0 100px<span class="token punctuation">;</span>
  35. <span class="token property">border</span><span class="token punctuation">:</span> 1px solid<span class="token punctuation">;</span>
  36. <span class="token punctuation">}</span>
  37. <span class="token selector">img</span> <span class="token punctuation">{</span>
  38. <span class="token property">width</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span>
  39. <span class="token property">height</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span>
  40. <span class="token punctuation">}</span>
  41. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br></div></div><div class="language-js line-numbers-mode"><pre class="language-js"><code><span class="token comment">// 定义图片源数据</span>
  42. <span class="token keyword">let</span> imgs <span class="token operator">=</span> <span class="token punctuation">[</span>
  43. <span class="token string">'[图片1]'</span><span class="token punctuation">,</span>
  44. <span class="token comment">//---------------//</span>
  45. <span class="token comment">// 忽略同类型代码. //</span>
  46. <span class="token comment">//---------------//</span>
  47. <span class="token string">'[图片2]'</span><span class="token punctuation">,</span>
  48. <span class="token punctuation">]</span><span class="token punctuation">;</span>
  49. <span class="token keyword">function</span> <span class="token function">replacement</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  50. <span class="token comment">// 获取img-wrapper下的所有子节点</span>
  51. <span class="token keyword">let</span> imgWrapper <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementsByClassName</span><span class="token punctuation">(</span><span class="token string">'img-wrapper'</span><span class="token punctuation">)</span><span class="token punctuation">.</span>childNodes<span class="token punctuation">;</span>
  52. <span class="token comment">//设置其他img图像为正常显示</span>
  53. <span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token keyword">let</span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator">&lt;</span> imgWrapper<span class="token punctuation">.</span>length<span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  54. imgWrapper<span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">.</span>children<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">.</span>src <span class="token operator">=</span> imgs<span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">;</span>
  55. <span class="token punctuation">}</span>
  56. <span class="token comment">// 设置被点击元素的图像</span>
  57. <span class="token keyword">this</span><span class="token punctuation">.</span>children<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">.</span>src <span class="token operator">=</span> <span class="token string">'[需要展示的图片链接]'</span><span class="token punctuation">;</span>
  58. <span class="token punctuation">}</span>
  59. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br><span class="line-number">16</span><br><span class="line-number">17</span><br><span class="line-number">18</span><br></div></div><div class="dynamic_replacement_image" data-v-488aec74><div class="img-wrapper" data-v-488aec74><div data-v-488aec74><img ondragstart="return false;" src="/images/js/2018_10_28/images/01.png" alt data-v-488aec74></div><div data-v-488aec74><img ondragstart="return false;" src="/images/js/2018_10_28/images/02.png" alt data-v-488aec74></div><div data-v-488aec74><img ondragstart="return false;" src="/images/js/2018_10_28/images/03.png" alt data-v-488aec74></div></div></div> <h2 id="稍微复杂一点"><a href="#稍微复杂一点" class="header-anchor">#</a> 稍微复杂一点</h2> <p>通多<code>js</code>去创建重复的<code>div</code>布局.并设置样式.最后结果同上.</p> <p>但是这个例子没有做需要做循环的元素总量达到 100 或是更高数量的性能优化.</p> <div class="language-html line-numbers-mode"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>imgWrapper<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  60. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br></div></div><div class="language-css line-numbers-mode"><pre class="language-css"><code><span class="token selector">#imgWrapper</span> <span class="token punctuation">{</span>
  61. <span class="token property">display</span><span class="token punctuation">:</span> flex<span class="token punctuation">;</span>
  62. <span class="token property">width</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span>
  63. <span class="token property">flex-wrap</span><span class="token punctuation">:</span> wrap<span class="token punctuation">;</span>
  64. <span class="token punctuation">}</span>
  65. <span class="token selector">#imgWrapper &gt; div</span> <span class="token punctuation">{</span>
  66. <span class="token property">flex</span><span class="token punctuation">:</span> 0 0 200px<span class="token punctuation">;</span>
  67. <span class="token punctuation">}</span>
  68. <span class="token selector">#imgWrapper &gt; div &gt; img</span> <span class="token punctuation">{</span>
  69. <span class="token property">display</span><span class="token punctuation">:</span> block<span class="token punctuation">;</span>
  70. <span class="token property">width</span><span class="token punctuation">:</span> 100%<span class="token punctuation">;</span>
  71. <span class="token property">height</span><span class="token punctuation">:</span> auto<span class="token punctuation">;</span>
  72. <span class="token punctuation">}</span>
  73. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br></div></div><div class="language-js line-numbers-mode"><pre class="language-js"><code>window<span class="token punctuation">.</span><span class="token function-variable function">onload</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
  74. <span class="token keyword">let</span> imgWrapper <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">'imgWrapper'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// 待插入元素的总容器</span>
  75. <span class="token comment">// 通过 for 循环语句,创建示例元素</span>
  76. <span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token keyword">let</span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator">&lt;</span> <span class="token number">10</span><span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  77. <span class="token keyword">let</span> newNode <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">createElement</span><span class="token punctuation">(</span><span class="token string">'div'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// 自定义需要插入图片的容器</span>
  78. <span class="token keyword">let</span> newNodeImage <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">createElement</span><span class="token punctuation">(</span><span class="token string">'img'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// 自定义图片容器</span>
  79. <span class="token comment">// 由于图片名字的格式为 01.png</span>
  80. <span class="token comment">// 所以需要通过自定义 的 indexSrc 方法,转换 i 为符合要求的格式</span>
  81. <span class="token keyword">let</span> index <span class="token operator">=</span> <span class="token function">indexSrc</span><span class="token punctuation">(</span>j<span class="token punctuation">)</span><span class="token punctuation">;</span>
  82. <span class="token comment">// 下面是 div img 的组装了.</span>
  83. newNodeImage<span class="token punctuation">.</span>src <span class="token operator">=</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">./images/</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>index<span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">.png</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">;</span>
  84. newNode<span class="token punctuation">.</span><span class="token function">appendChild</span><span class="token punctuation">(</span>newNodeImage<span class="token punctuation">)</span><span class="token punctuation">;</span>
  85. imgWrapper<span class="token punctuation">.</span><span class="token function">appendChild</span><span class="token punctuation">(</span>newNode<span class="token punctuation">)</span><span class="token punctuation">;</span>
  86. <span class="token punctuation">}</span>
  87. <span class="token comment">// 通过 for 循环语句,给每个 img 的父元素添加点击事件,改变元素内部的 img 的 src 属性</span>
  88. <span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token keyword">let</span> i <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> i <span class="token operator">&lt;</span> imgWrapper<span class="token punctuation">.</span>children<span class="token punctuation">.</span>length<span class="token punctuation">;</span> i<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  89. imgWrapper<span class="token punctuation">.</span>children<span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">.</span><span class="token function">addEventListener</span><span class="token punctuation">(</span><span class="token string">'click'</span><span class="token punctuation">,</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  90. <span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token keyword">let</span> j <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> j <span class="token operator">&lt;</span> imgWrapper<span class="token punctuation">.</span>children<span class="token punctuation">.</span>length<span class="token punctuation">;</span> j<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  91. <span class="token keyword">let</span> index <span class="token operator">=</span> <span class="token function">indexSrc</span><span class="token punctuation">(</span>j<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// 同上</span>
  92. imgWrapper<span class="token punctuation">.</span>children<span class="token punctuation">[</span>j<span class="token punctuation">]</span><span class="token punctuation">.</span>children<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">.</span>src <span class="token operator">=</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">./images/</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>index<span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">.png</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">;</span>
  93. <span class="token punctuation">}</span>
  94. <span class="token keyword">this</span><span class="token punctuation">.</span>children<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">.</span>src <span class="token operator">=</span> <span class="token string">'./images/qq.png'</span><span class="token punctuation">;</span>
  95. <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  96. <span class="token punctuation">}</span>
  97. <span class="token keyword">function</span> <span class="token function">indexSrc</span><span class="token punctuation">(</span><span class="token parameter">index</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  98. <span class="token comment">// 这里涉及到 + 的优先级. 过程是 index 先同 1 相加,然会再去同 为空的 '' 相加</span>
  99. index <span class="token operator">=</span> <span class="token string">''</span> <span class="token operator">+</span> index <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">;</span>
  100. <span class="token keyword">if</span> <span class="token punctuation">(</span>index<span class="token punctuation">.</span>length <span class="token operator">&lt;</span> <span class="token number">2</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  101. index <span class="token operator">=</span> <span class="token string">'0'</span> <span class="token operator">+</span> index<span class="token punctuation">;</span>
  102. <span class="token punctuation">}</span>
  103. <span class="token keyword">return</span> index<span class="token punctuation">;</span>
  104. <span class="token punctuation">}</span>
  105. <span class="token punctuation">}</span><span class="token punctuation">;</span>
  106. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br><span class="line-number">16</span><br><span class="line-number">17</span><br><span class="line-number">18</span><br><span class="line-number">19</span><br><span class="line-number">20</span><br><span class="line-number">21</span><br><span class="line-number">22</span><br><span class="line-number">23</span><br><span class="line-number">24</span><br><span class="line-number">25</span><br><span class="line-number">26</span><br><span class="line-number">27</span><br><span class="line-number">28</span><br><span class="line-number">29</span><br><span class="line-number">30</span><br><span class="line-number">31</span><br><span class="line-number">32</span><br><span class="line-number">33</span><br></div></div><h2 id="更新说明"><a href="#更新说明" class="header-anchor">#</a> 更新说明:</h2> <p>下面的内容部分还有函数部分,写的一团糟糕.建议不要做浏览(由于是第一篇博文,所以做保留处理).<br>
  107. 所以我写了一个最简单的示例.看上面部分即可.</p> <h2 id="目的:"><a href="#目的:" class="header-anchor">#</a> 目的:</h2> <p>在制作个人网站的时候,我需要在 header 里面加入各大社交网站的直链,可以让更多人,找到我,提供他们的想法。并且去实现那个想法。</p> <h2 id="展现方式:"><a href="#展现方式:" class="header-anchor">#</a> 展现方式:</h2> <p>是以一种点击图标的的形式,展示不同社交网站的二维码或者是链接。在开发过程中遇到很多有意思的坑,想分享给大家,希望可以给看到本文的小伙伴提供点帮助。</p> <h2 id="使用技巧"><a href="#使用技巧" class="header-anchor">#</a> 使用技巧</h2> <p>由于在一开始,我们就用了多个程序来进行区分不同事件点击之后,显示不同的图片的功能。但是在一段时间之后发现这样子的代码谈不上什么有价值的,所以我重新花了点时间,把代码重新架构了一番。清理了冗余代码,同时也把程序优化了。
  108. 优化之后的程序只要将植入代码,就可以实现简单的点击不同按钮,相同位置展示不同图片功能。</p> <h2 id="项目结构:"><a href="#项目结构:" class="header-anchor">#</a> 项目结构:</h2> <div class="language- line-numbers-mode"><pre class="language-text"><code>├──index // 示例 index
  109. │ ├──js
  110. │ │ └──index.js
  111. │ ├──css
  112. │ │ └──index.js
  113. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br></div></div><h2 id="index-html-详解"><a href="#index-html-详解" class="header-anchor">#</a> index.html 详解</h2> <p>首先页面 header 排版,设置具体结构</p> <div class="language-html line-numbers-mode"><pre class="language-html"><code>├── div // 示例 header
  114. │ ├── div
  115. │ │ └── img
  116. │ │ └── img
  117. │ │ └── img
  118. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br></div></div><p>在每个 img 中添加 onclick=&quot;hImage()&quot;属性,并给每个&quot;hImage()&quot;中加入&quot;1-3&quot;值;设置这个值,是为了在 index.js 的 hImage()函数中做出对应的判断。</p> <div class="language-html line-numbers-mode"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>h-image<span class="token punctuation">&quot;</span></span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hImage(1)<span class="token punctuation">&quot;</span></span> <span class="token attr-name">width</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>50<span class="token punctuation">&quot;</span></span> <span class="token attr-name">height</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>25<span class="token punctuation">&quot;</span></span> <span class="token attr-name">alt</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>图标1<span class="token punctuation">&quot;</span></span> <span class="token attr-name">title</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>1<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  119. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br></div></div><div class="language-html line-numbers-mode"><pre class="language-html"><code><span class="token comment">&lt;!--主框架--&gt;</span>
  120. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>h-box<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  121. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span><span class="token style-attr language-css"><span class="token attr-name"> <span class="token attr-name">style</span></span><span class="token punctuation">=&quot;</span><span class="token attr-value"><span class="token property">color</span><span class="token punctuation">:</span> #fff<span class="token punctuation">;</span><span class="token property">text-align</span><span class="token punctuation">:</span> center</span><span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  122. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>h-image<span class="token punctuation">&quot;</span></span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hImage(1)<span class="token punctuation">&quot;</span></span> <span class="token attr-name">width</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>50<span class="token punctuation">&quot;</span></span> <span class="token attr-name">height</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>25<span class="token punctuation">&quot;</span></span> <span class="token attr-name">alt</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>图标1<span class="token punctuation">&quot;</span></span> <span class="token attr-name">title</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>1<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  123. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>h-image<span class="token punctuation">&quot;</span></span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hImage(2)<span class="token punctuation">&quot;</span></span> <span class="token attr-name">width</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>50<span class="token punctuation">&quot;</span></span> <span class="token attr-name">height</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>25<span class="token punctuation">&quot;</span></span> <span class="token attr-name">alt</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>图标2<span class="token punctuation">&quot;</span></span> <span class="token attr-name">title</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>2<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  124. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>h-image<span class="token punctuation">&quot;</span></span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hImage(3)<span class="token punctuation">&quot;</span></span> <span class="token attr-name">width</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>50<span class="token punctuation">&quot;</span></span> <span class="token attr-name">height</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>25<span class="token punctuation">&quot;</span></span> <span class="token attr-name">alt</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>图标3<span class="token punctuation">&quot;</span></span> <span class="token attr-name">title</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>3<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  125. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  126. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  127. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br></div></div><h2 id="模态框"><a href="#模态框" class="header-anchor">#</a> 模态框</h2> <div class="language-html line-numbers-mode"><pre class="language-html"><code>├── div // 示例 模态框
  128. │ ├── div
  129. │ │ └── div
  130. │ │ └── img
  131. │ │ └── h1
  132. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br></div></div><p>第一层 div 设置模态框显示之后的透明色背景。
  133. 第二层 div 主要是做模态框显示之后的内容的框架
  134. 第二层 div 下面的 div 是关闭模态框按钮。里面加入 onclick=&quot;hShow()&quot; 函数,该函数负责关闭模态框</p> <div class="language-html line-numbers-mode"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hShow()<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>×<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  135. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br></div></div><p>第二层 div 下面的 img 则是展示不同图标点击之后,显示的二维码
  136. 第二层 div 下面的 h1 则是展示不同图标点击之后,显示的提示信息
  137. 这里的模态框设置
  138. 使用 position 中的 fixed,来设置模态框的位置与样式。同</p> <div class="language-html line-numbers-mode"><pre class="language-html"><code><span class="token comment">&lt;!--模板--&gt;</span>
  139. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>h-module<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  140. <span class="token comment">&lt;!--放置二维码图片--&gt;</span>
  141. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span><span class="token punctuation">&gt;</span></span>
  142. <span class="token comment">&lt;!--设置模态框关闭按钮--&gt;</span>
  143. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">onclick</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hShow()<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>×<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  144. <span class="token comment">&lt;!--图片放置路径--&gt;</span>
  145. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>img</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hhtImg<span class="token punctuation">&quot;</span></span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span><span class="token punctuation">&quot;</span></span> <span class="token attr-name">alt</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span><span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
  146. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>h1</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>hText<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>h1</span><span class="token punctuation">&gt;</span></span>
  147. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  148. <span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
  149. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br></div></div><h2 id="index-js-详解"><a href="#index-js-详解" class="header-anchor">#</a> index.js 详解</h2> <div class="language-js line-numbers-mode"><pre class="language-js"><code><span class="token keyword">var</span> hModule <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementsByClassName</span><span class="token punctuation">(</span><span class="token string">'h-module'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//获取模态框中的关闭按钮属性</span>
  150. <span class="token keyword">var</span> hhtImg <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">'hhtImg'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//设置模态框不同位置按钮点击之后展示的属性图片属性</span>
  151. <span class="token keyword">var</span> hText <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">'hText'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//设置模态框显示之后的提示信息</span>
  152. <span class="token comment">/*hImage函数
  153. * 由于图片只有一张,所以同时设置title属性以示区分
  154. * 通过 switch语句判断点击不同按钮,
  155. * 在模态框展示不同的图片。
  156. */</span>
  157. <span class="token keyword">function</span> <span class="token function">hImage</span><span class="token punctuation">(</span><span class="token parameter">e</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  158. console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  159. <span class="token keyword">switch</span> <span class="token punctuation">(</span>e<span class="token punctuation">)</span> <span class="token punctuation">{</span>
  160. <span class="token keyword">case</span> <span class="token number">1</span><span class="token operator">:</span>
  161. <span class="token comment">//hhtImg.src为设置需要展示的图片的地址</span>
  162. hhtImg<span class="token punctuation">.</span>src <span class="token operator">=</span>
  163. <span class="token string">'http://oigzh9iic.bkt.clouddn.com/%E4%BA%AB%E6%9C%88%E4%BC%9A%E5%85%AC%E4%BC%97%E5%8F%B7%E4%BA%8C%E7%BB%B4%E7%A0%81.jpg'</span><span class="token punctuation">;</span>
  164. hhtImg<span class="token punctuation">.</span>title <span class="token operator">=</span> <span class="token string">'这里是'</span> <span class="token operator">+</span> e<span class="token punctuation">;</span> <span class="token comment">//此处设置鼠标悬浮于图片时显示的文字</span>
  165. hText<span class="token punctuation">.</span>innerHTML <span class="token operator">=</span> <span class="token string">'这里是二维码'</span> <span class="token operator">+</span> e<span class="token punctuation">;</span> <span class="token comment">//此出设置模态框显示之后,展示提示文字的内容</span>
  166. <span class="token keyword">break</span><span class="token punctuation">;</span>
  167. <span class="token keyword">case</span> <span class="token number">2</span><span class="token operator">:</span>
  168. hhtImg<span class="token punctuation">.</span>src <span class="token operator">=</span>
  169. <span class="token string">'http://oigzh9iic.bkt.clouddn.com/%E4%BA%AB%E6%9C%88%E4%BC%9A%E5%85%AC%E4%BC%97%E5%8F%B7%E4%BA%8C%E7%BB%B4%E7%A0%81.jpg'</span><span class="token punctuation">;</span>
  170. hhtImg<span class="token punctuation">.</span>title <span class="token operator">=</span> <span class="token string">'这里是'</span> <span class="token operator">+</span> e<span class="token punctuation">;</span>
  171. hText<span class="token punctuation">.</span>innerHTML <span class="token operator">=</span> <span class="token string">'这里是二维码'</span> <span class="token operator">+</span> e<span class="token punctuation">;</span>
  172. <span class="token keyword">break</span><span class="token punctuation">;</span>
  173. <span class="token keyword">case</span> <span class="token number">3</span><span class="token operator">:</span>
  174. hhtImg<span class="token punctuation">.</span>src <span class="token operator">=</span>
  175. <span class="token string">'http://oigzh9iic.bkt.clouddn.com/%E4%BA%AB%E6%9C%88%E4%BC%9A%E5%85%AC%E4%BC%97%E5%8F%B7%E4%BA%8C%E7%BB%B4%E7%A0%81.jpg'</span><span class="token punctuation">;</span>
  176. hhtImg<span class="token punctuation">.</span>title <span class="token operator">=</span> <span class="token string">'这里是'</span> <span class="token operator">+</span> e<span class="token punctuation">;</span>
  177. hText<span class="token punctuation">.</span>innerHTML <span class="token operator">=</span> <span class="token string">'这里是二维码'</span> <span class="token operator">+</span> e<span class="token punctuation">;</span>
  178. <span class="token keyword">break</span><span class="token punctuation">;</span>
  179. <span class="token punctuation">}</span>
  180. hModule<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">.</span>style<span class="token punctuation">.</span>display <span class="token operator">=</span> <span class="token string">'block'</span><span class="token punctuation">;</span>
  181. <span class="token punctuation">}</span>
  182. <span class="token comment">/*hShow函数
  183. * 功能:关闭模态框;
  184. * 由于原生js中,获取参数的值
  185. * 之后,其属性为数组形式;
  186. * 需要设置下标,再去设置style属性,
  187. * 或者是其他属性
  188. * */</span>
  189. <span class="token keyword">function</span> <span class="token function">hShow</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  190. hModule<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">.</span>style<span class="token punctuation">.</span>display <span class="token operator">=</span> <span class="token string">'none'</span><span class="token punctuation">;</span>
  191. <span class="token punctuation">}</span>
  192. </code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br><span class="line-number">16</span><br><span class="line-number">17</span><br><span class="line-number">18</span><br><span class="line-number">19</span><br><span class="line-number">20</span><br><span class="line-number">21</span><br><span class="line-number">22</span><br><span class="line-number">23</span><br><span class="line-number">24</span><br><span class="line-number">25</span><br><span class="line-number">26</span><br><span class="line-number">27</span><br><span class="line-number">28</span><br><span class="line-number">29</span><br><span class="line-number">30</span><br><span class="line-number">31</span><br><span class="line-number">32</span><br><span class="line-number">33</span><br><span class="line-number">34</span><br><span class="line-number">35</span><br><span class="line-number">36</span><br><span class="line-number">37</span><br><span class="line-number">38</span><br><span class="line-number">39</span><br><span class="line-number">40</span><br><span class="line-number">41</span><br><span class="line-number">42</span><br><span class="line-number">43</span><br></div></div></div> <footer class="page-edit"><!----> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">11/2/2018, 4:24:41 PM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
  193. <a href="/JavaScript/2018_10_29_02.html" class="prev">代码收集</a></span> <span class="next"><a href="/JavaScript/2018_11_02_01.html">战舰游戏</a>
  194. </span></p></div> </main></div><div class="global-ui"></div></div>
  195. <script src="/assets/js/app.6fdf7a1a.js" defer></script><script src="/assets/js/3.d927fe3f.js" defer></script><script src="/assets/js/85.c322a56a.js" defer></script><script src="/assets/js/54.80d9ca6b.js" defer></script>
  196. </body>
  197. </html>