网站设计之常见简单实用的JavaScript特效总结

    这篇主要是总结JavaScript常见简单实用的特效,主要从代码量短、简单实用几个方面进行叙述。其中特效包括:
        1.鼠标悬停图片切换查看器;
        2.鼠标移动图片放大;
        3.鼠标移动切换内容;
        4.贵财下拉菜单案例;
        5.JS图片放大镜功能-类似淘宝;
        6.下一页翻页跳转功能。

        下载地址:
        希望文章对你有所帮助,尤其是学习前端JavaScript的同学。


一. 鼠标悬停图片切换查看器

        代码如下所示,通过JavaScript函数showDaTu显示大图,重点是在中调用onmouseover鼠标函数,然后通过document.getElementById函数实现换图。

[html]  view plain  copy
  1. <html>  
  2.     <head>  
  3.         <title>  
  4.             JavaScript 图片切换   
  5.         title>  
  6.     head>  
  7.     <body>  
  8.         <script>  
  9.             function showDaTu(src){  
  10.                 document.getElementById("defaultImg").src=src;  
  11.             }  
  12.         script>  
  13.           
  14.         <img src="wall1.jpg" id="defaultImg">  
  15.         <br><br><br>  
  16.         <img src='wall_s1.jpg' onmouseover="showDaTu('wall1.jpg')">  
  17.         <img src='wall_s2.jpg' onmouseover="showDaTu('wall2.jpg')">  
  18.         <img src='wall_s3.jpg' onmouseover="showDaTu('wall3.jpg')">  
  19.         <img src='wall_s4.jpg' onmouseover="showDaTu('wall4.jpg')">  
  20.         <br>因图片较大,请等待图片加载完成……然后鼠标放小图上就会切换了。  
  21.   
  22.     body>  
  23. html>  
        运行结果如下图所示:


二. 鼠标移动图片放大

        该部分参考:http://blog.csdn.net/u014175572/article/details/51535768
        CSS3的transform:scale()可以实现按比例放大或者缩小功能。
        CSS3的transition允许CSS的属性值在一定的时间区间内平滑地过渡。这种效果可以在鼠标单击、获得焦点、被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值。
        代码如下所示:

[html]  view plain  copy
  1. <html>    
  2.     <head>    
  3.         <meta charset="UTF-8">    
  4.         <title>title>    
  5.         <style type="text/css">    
  6.             div{    
  7.                 width: 300px;    
  8.                 height: 300px;    
  9.                 border: #000 solid 1px;    
  10.                 margin: 50px auto;    
  11.                 overflow: hidden;    
  12.             }    
  13.             div img{    
  14.                 cursor: pointer;    
  15.                 transition: all 0.6s;    
  16.             }    
  17.             div img:hover{    
  18.                 transform: scale(1.4);    
  19.             }    
  20.         style>    
  21.     head>    
  22.     <body>    
  23.         <div>    
  24.             <img src="focus.jpg" />    
  25.         div>    
  26.     body>    
  27. html>  
        效果如下图所示,包括缩放前后的对比。

  

        transition: all 0.6s;表示所有的属性变化在0.6s的时间段内完成。
        transform: scale(1.4);表示在鼠标放到图片上的时候图片按比例放大1.4倍。
        PS:这部分代码参考博主"简单就是美",推荐大家可以去学习下,非常不错。



三. 鼠标移动内容切换

        这段代码参考文章:http://blog.csdn.net/hill_kinsham/article/details/52448668
        重点说一下关键功能的几个函数。 
        1.οnmοuseοver=" change('zs', this) " 函数的功能是鼠标移动到目标区域时,响应函数。这里的'zs'用id与后面要变更的区域绑定。this的功能不太了解,效果是改变当前的值。 
        2.οnmοuseοut="change2(this)";函数的功能是鼠标移开目标区域时,响应函数。 
        3.display. display 属性规定元素应该生成的框的类型。
        none 此元素不会被显示。block 此元素将显示为块级元素,此元素前后会带有换行符。inline 默认。此元素会被显示为内联元素,元素前后没有换行符。
        4.用

    时,去掉行号,并把它放到最左边。 list-style-type: none;

    [html]  view plain  copy
    1. <html>  
    2. <head>  
    3.     <meta charset="UTF-8">  
    4.     <style>  
    5.      body{  
    6.         font-size: 12px;  
    7.     }  
    8.     .div1{  
    9.         width: 126px;  
    10.         height: 156px;  
    11.        /* background-color: peachpuff;*/  
    12.     }  
    13.     .navi{  
    14.         width: 21px;  
    15.         height: 156px;  
    16.        /* background-color: yellowgreen;*/  
    17.         float: left;  
    18.     }  
    19.     .navi ul{  
    20.         padding: 0px;  
    21.         margin-left: 0px;  
    22.         margin-top: 0px;  
    23.     }  
    24.     .navi ul li{  
    25.         list-style-type: none;  
    26.         width: 21px;  
    27.         height: 43px;  
    28.         margin-top: 4px;  
    29.         text-align: center;  
    30.         padding-top: 5px;  
    31.         background-color: silver;  
    32.     }  
    33.     .zs, .rz,.ky{  
    34.         width: 101px;  
    35.         margin-left: 4px;  
    36.         height: 156px;  
    37.         margin-top: 0px;  
    38.         /*background-color: rosybrown;*/  
    39.         float: left;  
    40.     }  
    41.     .zs ul,.rz ul,.ky ul{  
    42.         padding: 0px;  
    43.         margin-left: 0px;  
    44.         margin-top: 3px;  
    45.         float: left;  
    46.     }  
    47.     .zs ul li,.rz ul li,.ky ul li{  
    48.         list-style-type: none;  
    49.         line-height: 19px;  
    50.     }  
    51.     .rz,.ky{  
    52.         display: none;  
    53.     }  
    54.     style>  
    55.     <title>souhutitle>  
    56.     <script language="JavaScript">  
    57.           
    58. <script type="text/javascript" src="js/jquery-1.4.4.min.js">script>  
    59. <script type="text/javascript">  
    60. $(function(){  
    61.     $('#selectAll').click(function(){  
    62.         $('input[type=checkbox]').attr('checked', $(this).attr('checked'));  
    63.     });  
    64. });  
    65. script>  
    66.   
    67. <script language="javascript">   
    68. function deleteAll(obj){   
    69.         var checked = document.getElementsByName(obj);   
    70.         for(var i = 0; i < checked.length; i ++){   
    71.               if(checked[i].checked){   
    72.                   var tr=checked[i].parentNode.parentNode;   
    73.                   var tbody=tr.parentNode;   
    74.                   tbody.removeChild(tr);   
    75.                   i--;   
    76.                   }   
    77.         }   
    78. }   
    79. script>   
    80. <script type="text/javascript">  
    81.      function goPage(pno,psize){  
    82.     var itable = document.getElementById("idData");  
    83.     var num = itable.rows.length;//表格所有行数(所有记录数)  
    84.     console.log(num);  
    85.     var totalPage = 0;//总页数  
    86.     var pageSize = psize;//每页显示行数  
    87.     //总共分几页   
    88.     if(num/pageSize > parseInt(num/pageSize)){     
    89.             totalPage=parseInt(num/pageSize)+1;     
    90.        }else{     
    91.            totalPage=parseInt(num/pageSize);     
    92.        }     
    93.     var currentPage = pno;//当前页数  
    94.     var startRow = (currentPage - 1) * pageSize+1;//开始显示的行  31   
    95.        var endRow = currentPage * pageSize;//结束显示的行   40  
    96.        endRow = (endRow > num)? num : endRow;    40  
    97.        console.log(endRow);  
    98.        //遍历显示数据实现分页  
    99.     for(var i=1;i<(num+1);i++){      
    100.         var irow = itable.rows[i-1];  
    101.         if(i>=startRow && i<=endRow){  
    102.             irow.style.display = "block";      
    103.         }else{  
    104.             irow.style.display = "none";  
    105.         }  
    106.     }  
    107.     var pageEnd = document.getElementById("pageEnd");  
    108.     var tempStr = "共"+num+"条记录 分"+totalPage+"页 当前第"+currentPage+"页";  
    109.     if(currentPage>1){  
    110.         tempStr += "<a href=\"#\" onClick=\"goPage("+(1)+","+psize+")\">首页a>";  
    111.         tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage-1)+","+psize+")\"><上一页a>"  
    112.     }else{  
    113.         tempStr += "首页";  
    114.         tempStr += "<上一页";      
    115.     }  
    116.   
    117.     if(currentPage<totalPage){  
    118.         tempStr += "<a href=\"#\" onClick=\"goPage("+(currentPage+1)+","+psize+")\">下一页>a>";  
    119.         tempStr += "<a href=\"#\" onClick=\"goPage("+(totalPage)+","+psize+")\">尾页a>";  
    120.     }else{  
    121.         tempStr += "下一页>";  
    122.         tempStr += "尾页";      
    123.     }  
    124.   
    125.     document.getElementById("barcon").innerHTML = tempStr;  
    126.       
    127. }  
    128. script>  
    129. <script>  
    130. function td()  
    131. {  
    132.   document.getElementById("btn1").value="已读";  
    133. }  
    134. function td1()  
    135. {  
    136.   document.getElementById("btn2").value="已读";  
    137. }  
    138.     
    139. script>  
    140. head>  
    141.   
    142. <body onload ="goPage(1,5);" >  
    143. <div id="own">  
    144.    <div id="top">  
    145.          
    146.           <input class="sb" type="submit" id="" value="删除"  name="delete_button" onclick="deleteAll('range');" />  
    147.          
    148.   div>  
    149.     
    150.   <div id="buttom">  
    151.    <span>我的消息span>  
    152.      <div><hr color="#00CCFF" width="1030px"/>div>  
    153.     <table  cellPadding=0  cellSpacing=0 style="text-align:center" id="idData">  
    154.     <tbody>  
    155.     <tr style="height:35px;">  
    156.          <td width="45px"><input type="checkbox" value="" name="range" id="selectAll"/>td>  
    157.          <td width="120px">反馈人td>  
    158.          <td width="680px">反馈内容td>  
    159.         <td width="150px">反馈时间td>  
    160.          <td width="50px">操作td>  
    161.        tr>  
    162.       <tr  style="height:32px;">  
    163.          <td width="45px"><input type="checkbox" value="" name="range"/>td>  
    164.          <td width="120px">沈敏td>  
    165.          <td width="680px"><a href="xxxiangxi.html" target="menuFrame" onclick="iframe.location='xxxiangxi.html'">你好呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!a>td>  
    166.         <td width="150px">2016/11/13td>  
    167.          <td width="50px"><a href="xxxiangxi.html" target="menuFrame" onclick="iframe.location='xxxiangxi.html'"><input class="sb" type="submit"  value="未读"  id="btn1" onclick="td()"/>a>td>  
    168.        tr>  
    169.          
    170.        <tr style="height:32px;">  
    171.          <td width="45px"><input type="checkbox" value="" name="range"/>td>  
    172.          <td width="120px">沈敏td>  
    173.          <td width="680px"><a href="note.html" target="menuFrame" onclick="iframe.location='note.html'">你好呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!a>td>  
    174.         <td width="150px">2016/11/13td>  
    175.         <td width="50px"><a href="note.html" target="_blank"><input class="sb" type="submit" id="btn2" onclick="td1()" value="未读" />a>td>  
    176.        tr>  
    177.        <tr style="height:32px;">  
    178.          <td width="45px"><input type="checkbox" value="" name="range"/>td>  
    179.          <td width="120px">沈敏td>  
    180.          <td width="680px"><a href="note.html" target="menuFrame" onclick="iframe.location='note.html'">你好呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!a>td>  
    181.         <td width="150px">2016/11/13td>  
    182.         <td width="50px"><a href="note.html" target="_blank"><input class="sb" type="submit" id="btn2" onclick="td1()" value="未读" />a>td>  
    183.        tr>  
    184.        <tr style="height:32px;">  
    185.          <td width="45px"><input type="checkbox" value="" name="range"/>td>  
    186.          <td width="120px">沈敏td>  
    187.          <td width="680px"><a href="note.html" target="menuFrame" onclick="iframe.location='note.html'">你好呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!a>td>  
    188.         <td width="150px">2016/11/13td>  
    189.         <td width="50px"><a href="note.html" target="_blank"><input class="sb" type="submit" id="btn2" onclick="td1()" value="未读" />a>td>  
    190.        tr>  
    191.        <tr style="height:32px;">  
    192.          <td width="45px"><input type="checkbox" value="" name="range"/>td>  
    193.          <td width="120px">沈敏td>  
    194.          <td width="680px"><a href="note.html" target="menuFrame" onclick="iframe.location='note.html'">你好呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!a>td>  
    195.         <td width="150px">2016/11/13td>  
    196.         <td width="50px"><a href="note.html" target="_blank"><input class="sb" type="submit" id="btn2" onclick="td1()" value="未读" />a>td>  
    197.        tr>  
    198.        <tr style="height:32px;">  
    199.          <td width="45px"><input type="checkbox" value="" name="range"/>td>  
    200.          <td width="120px">沈敏td>  
    201.          <td width="680px"><a href="note.html" target="menuFrame" onclick="iframe.location='note.html'">你好呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!a>td>  
    202.         <td width="150px">2016/11/13td>  
    203.         <td width="50px"><a href="note.html" target="_blank"><input class="sb" type="submit" id="btn2" onclick="td1()" value="未读" />a>td>  
    204.        tr>  
    205.        tbody>  
    206.     table>  
    207.      <table width="100%" align="right">  
    208.         <tr><td style="padding-left:640px;"><div id="barcon" name="barcon">div>td>tr>  
    209.     table>    
    210.   div>  
    211.     
    212. div>  
    213. body>  
    214. html>  
            运行结果如下所示:




            最后希望这篇文章对你有所帮助,尤其是我的学生和JS学习者。
            最近非常开心,感谢娜娜,晚安~

           (By:Eastmount 2016-12-19 凌晨1点  http://blog.csdn.net/eastmount/ )





你可能感兴趣的:(javascript,JavaScript知识点)