zoukankan      html  css  js  c++  java
  • 图片的探照灯效果

    1.概述

    使用JavaScript编写一个图片探照灯的特效,当页面被加载时,这个探照灯的效果会在图上重复左右扫描,将其中一部分显示为光亮状态而其它部分显示为灰暗状态。

    2.技术要点

    使用了CSS滤镜技术中的light属性,通过light属性调用addPoint()和MoveLight()方法,来设置图片上光源的大小,并移动光源。

    3.具体实现

    (1)实现探照灯效果在图片扫描,javaScript代码如下:

    <script language="javascript">
    if (document.all && window.imagelight){
          var x=new Array();
          var heading=new Array();
          var y=new Array();
          if (imagelight.length==null){
                imagelight[0]=document.all.imagelight;
                x[0]=0;
                heading[0]="right";
                y[0]=imagelight[0].height;
                imagelight[0].filters.light.addPoint(100,50,100,255,255,255,90);
          }
          else
                for (i=0;i<imagelight.length;i++){
                x[i]=0;
                heading[i]="right";
                y[i]=imagelight[i].height;
                imagelight[i].filters.light.addPoint(100,50,100,255,255,255,90);
          }
    }
    function light(cur){
          imagelight[cur].filters.light.MoveLight(0,x[cur],y[cur],200,-1);
          if (x[cur]<imagelight[cur].width+200&&heading[cur]=="right")
                x[cur]+=10;
          else if (x[cur]>imagelight[cur].width+200){
                heading[cur]="left";
                x[cur]-=10;
          }
          else if (x[cur]>-200&&x[cur]<-185){
                heading[cur]="right";
                x[cur]+=10;
          }
          else{
                x[cur]-=10;
                heading[cur]="left";
          }
    }
    if (document.all&&window.imagelight){
          if (imagelight.length==null)
                setInterval("light(0)",imagelight[0].speed);
          else
                for (t=0;t<imagelight.length;t++){
                var temp='setInterval("light('+t+')",'+imagelight[t].speed+')';
                eval(temp);
                }
    }
    </SCRIPT>

    (2)在页面中编写css样式,并标记一幅图片代码如下:

    <STYLE type=text/css>
    #imagelight {
          FILTER: light
    }
    </STYLE>
    <center>
    <IMG id="imagelight" src="test.jpg" speed="20">
    </center>
  • 相关阅读:
    html控件使用
    托盤
    托盘的实现
    ws2s函数
    网络验证
    右上角X灰化
    如何模拟一个http请求并把response的内容保存下载下来,导出到excel中(结尾福利)
    排序的几种算法(一):冒泡排序
    python中的break eturnpasscontinue用法
    python中socket模块详解
  • 原文地址:https://www.cnblogs.com/zkn11199/p/5581847.html
Copyright © 2011-2022 走看看