• 平稳退化,JS和HTML标记分离,极致性能的JavaScript图片库


    index.html

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4 <meta charset="UTF-8">
     5 <title>JavaScript图片库</title>
     6 <script type="text/javascript" src="placeholder.js"></script>
     7 </head>
     8 <body>
     9 <ul id="gallery">
    10     <li><a href="image/1 (1).jpg" title="不错的毛玻璃1">毛玻璃1</a> </li>
    11     <li><a href="image/1 (2).jpg" title="不错的毛玻璃2">毛玻璃2</a> </li>
    12     <li><a href="image/1 (3).jpg" title="不错的毛玻璃3">毛玻璃3</a> </li>
    13     <li><a href="image/1 (4).jpg" title="不错的毛玻璃4">毛玻璃4</a> </li>
    14 </ul>
    15 <img id="placeholder" src="image/placeholder.jpg" alt="My Image Gallery" />
    16 <p id="description">Choose an image</p>
    17 </body>
    18 </html>

    placeholder.js

     1     <!--平稳退化,JS和HTML标记分离,极致性能的JS图片库-->
     2     function showPic(whichPic){
     3         var placeholder=document.getElementById("placeholder");
     4         if(!placeholder){
     5             return false;
     6         }
     7         var source=whichPic.getAttribute("href");
     8         placeholder.setAttribute("src",source);
     9         var desc=document.getElementById("description");
    10         if(desc){
    11             var text=whichPic.getAttribute("title");
    12             desc.childNodes[0].nodeValue=text;
    13         }
    14         return true;
    15     }
    16     function bind(){
    17         if(!document.getElementById){
    18            return false;
    19         }
    20         if(!document.getElementsByTagName){
    21             return false;
    22         }
    23         var myGallery=document.getElementById('gallery');
    24         var a=myGallery.getElementsByTagName("a");
    25         for(var i=0;i< a.length;i++){
    26             a[i].onclick=function(){
    27                 return !showPic(this);
    28             }
    29         }
    30     }
    31     window.onload=bind;
  • 相关阅读:
    Useful for Android the development engineer from Github
    Compile a native C Android application
    android-non-ui-ui-thread-communications-part-5-5
    android-non-ui-to-ui-thread-communications-part-4-of-5
    Android Non-UI to UI Thread Communications(Part 3 of 5)
    webpack 配置的相关标准化
    eslint 配置规则
    移动端自己实现table的思路
    前端 转pdf的方法
    关于git 提交的一些规范
  • 原文地址:https://www.cnblogs.com/gangtiexia/p/5138072.html
Copyright © 2020-2023  润新知