DHTML页面飞动与随机出现名人名言效果

2024-01-18 18:58

本文主要是介绍DHTML页面飞动与随机出现名人名言效果,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

<script language="javascript" type="text/javascript" src="http://www.feedsky.com/msub_ajax_sub_js.html?burl=softwave&t=1&c=orange"></script>
代码在IE6,Firefox1.7,Opera9下运行了通过。
< html  xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< title > 博客邮箱飞来飞去效果演示 </ title >
< script  type ="text/javascript" >
/**
 * @author cuilin www.cuilin.name
 * @mail:cuilin0@gmail.com
 
*/

    
var ev={};
    
var flyDiv="bxAddrFly";//发送的层
    var inceptDiv="SendAddress";//负责接收层效果的控件
    var addEvent="addAddress()";//层发送成功后的接收事件
    function oo(obj){return (document.getElementById) ? document.getElementById(obj): document.all[obj];}
    
function isNone(str){return str==null||str==""?true:false}
    
//=================兼容Firefox/Event=================
    //因为要将表现与行为分离所在此处浪费了很多代码
    var Browser = new Object();
    Browser.isFirefox 
= (navigator.userAgent.toLowerCase().indexOf("firefox")!=-1);
    
if (Browser.isFirefox) { extendEventObject();}
    
function extendEventObject() {
    
        window.constructor.prototype.__defineGetter__(
"event"function(){
        
var o = arguments.callee.caller;
        
var e;
        
while(o != null){
            e 
= o.arguments[0];
            
if(e && (e.constructor == Event || e.constructor == MouseEvent)) return e;
            o 
= o.caller;
        }

        
return null;
        }
);
        
        Event.prototype.__defineGetter__(
"srcElement"function () {
            
var node = this.target;
            
while (node.nodeType != 1) node = node.parentNode;
            
return node;
        }
);    
    }

    window.onload 
= function(){
        
var addrTree = oo('tbAddrTree');
        addrTree.onmouseover 
= function(){addrTree_event(event)};
        addrTree.onmouseout 
= function(){addrTree_event(event)};
        addrTree.onclick 
= function(){addrTree_event(event)};
    }

    
function addrTree_event(e){    
        
var memberID,tr
        
var ee = e.srcElement; 
        
if(ee.tagName=="A"&&e.type=="mouseover"){ee.style.textDecoration="underline"}
        
if(ee.tagName=="A"&&e.type=="mouseout"){ee.style.textDecoration=""}
        
if(e.type=="click"&&e.srcElement.tagName=="A"){            
            
var li=ee.parentNode.parentNode;
            ev.AddInfo
="""+li.getAttribute("memberName")+""<""+li.getAttribute("email")+"">"
            oo(flyDiv).innerHTML
=li.getAttribute("memberName");
            addrTree_add(e.clientX,e.clientY)
        }

    }

    
function addrTree_add(ex,ey){
        
if(oo(flyDiv).style.display=='none'||oo(flyDiv).style.display==''){oo(flyDiv).style.display='block';}
        
//此处获取控件的坐标
        var inceptE = oo(inceptDiv);
        
var inceptEX = inceptE.offsetTop;   
        
var inceptEY = inceptE.offsetLeft;   
        
while(inceptE = inceptE.offsetParent){
            inceptEX 
+= inceptE.offsetTop;   
            inceptEY 
+= inceptE.offsetLeft;   
        }

        ev.flyArr
=new Array(ex,ey,inceptEX,inceptEY,10);
        fly(flyDiv,addEvent);
    }

    
//
    function fly(flyObj,flyRun){
        
var obj,a=ev.flyArr,x,y
        
if(flyObj!=null){
            
if(ev.flyObj!=null){
                window.clearTimeout(ev.flyTm);
                ev.flyObj.style.top
=-900;
            }

            a[
5]=0;
            ev.flyObj
=oo(flyObj);
            ev.flyRun
=flyRun;
        }

        
        obj
=ev.flyObj;
        
if(a[4]==null){a[4]=1}
        a[
5]+=a[4]/Math.sqrt(Math.pow(a[2]-a[0],2)+Math.pow(a[3]-a[1],2));
        
if(a[5]>1){
            obj.style.top
=-900;
            eval(ev.flyRun);
            ev.flyObj
=null;
            
return;
        }

        
        window.clearTimeout(ev.flyTm);
        x
=(a[2]-a[0])*a[5]+a[0];
        y
=(a[3]-a[1])*a[5]+a[1];
        obj.style.left
=x;
        obj.style.top
=y;
        document.body.style.overflowX
="hidden";    
        ev.flyTm
=window.setTimeout("fly()",10)
    }

    
//事件处理
    function addAddress()
    
{
        
var key=ev.AddInfo;
        
if (oo(inceptDiv).value.indexOf(key)==-1)
        
{
            oo(inceptDiv).value
+=key+",";
        }

    }

</ script >
< style  type ="text/css" >
ul
{ list-style:none; margin:0; padding:0;}
li
{ margin:0; padding:0;}
#content
{width:100%;}
#sendmail
{float:left; width:60%;}
#friendlist
{float:left; width:30%;}
#bxAddrFly
{position:absolute;height:15px; width:50px;background:#e5edf6; border:1px #7F9DB9 solid;display:none;}
#tbAddrTree
{ width:190px; float:left; padding:4px;border:1px #7F9DB9 solid;}
#tbAddrTree li
{ width:100%; float:left;}
#tbAddrTree a
{backgroud: #fff;width: 100%;color:#494949;text-decoration: none;float:left;}
#tbAddrTree a:hover
{background: #e5edf6;}
</ style >
</ head >
< body >
< div  id ="content" >
  
< div  id ="sendmail" >
    
< input  name ="textfield"  type ="text"  id ="SendAddress"  size ="70" >
  
</ div >
  
< div  id ="friendlist" >
    
< div  id ="tbAddrTree" >
      
< ul >
        
< li  membername ="test0"  email ="test0@163.com" >< nobr >< a > test0 </ a ></ nobr ></ li >
        
< li  membername ="test1"  email ="test1@163.com" >< nobr >< a > test1 </ a ></ nobr ></ li >
        
< li  membername ="test2"  email ="test2@163.com" >< nobr >< a > test2 </ a ></ nobr ></ li >
        
< li  membername ="test3"  email ="test3@163.com" >< nobr >< a > test3 </ a ></ nobr ></ li >
        
< li  membername ="test4"  email ="test4@163.com" >< nobr >< a > test4 </ a ></ nobr ></ li >
        
< li  membername ="test5"  email ="test5@163.com" >< nobr >< a > test5 </ a ></ nobr ></ li >
        
< li  membername ="test6"  email ="test6@163.com" >< nobr >< a > test6 </ a ></ nobr ></ li >
        
< li  membername ="test7"  email ="test7@163.com" >< nobr >< a > test7 </ a ></ nobr ></ li >
      
</ ul >
    
</ div >
    
< div  id ="bxAddrFly" > &nbsp; </ div >
  
</ div >
</ div >
</ body >
</ html >

另附代码: 名人名言,每次刷新都不同。
< div  id ="footer" >
                     
< div  id ="innerFooter" >
< SCRIPT  LANGUAGE ="JavaScript"  src ="http://www.fnqn.com/Adage/Adage.js" ></ SCRIPT >
                     
< div  id ="processtime" >
                     
</ div >
                     
</ div >
              
</ div >

转自【蓝色经典论坛http://bbs.blueidea.com/thread-2716964-1-1.html】 <script type="text/javascript" src="http://www.google.com/reader/ui/publisher.js"></script> <script type="text/javascript" src="http://www.google.com/reader/public/javascript/user/00697638153916680411/state/com.google/broadcast?n=5&callback=GRC_p(%7Bc%3A%22green%22%2Ct%3A%22%5Cu8FD9%5Cu4E9B%5Cu6587%5Cu7AE0%5Cu4E5F%5Cu503C%5Cu5F97%5Cu4E00%5Cu770B%22%2Cs%3A%22false%22%7D)%3Bnew%20GRC"></script>

这篇关于DHTML页面飞动与随机出现名人名言效果的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/619945

相关文章

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

详解如何在React中执行条件渲染

《详解如何在React中执行条件渲染》在现代Web开发中,React作为一种流行的JavaScript库,为开发者提供了一种高效构建用户界面的方式,条件渲染是React中的一个关键概念,本文将深入探讨... 目录引言什么是条件渲染?基础示例使用逻辑与运算符(&&)使用条件语句列表中的条件渲染总结引言在现代

详解Vue如何使用xlsx库导出Excel文件

《详解Vue如何使用xlsx库导出Excel文件》第三方库xlsx提供了强大的功能来处理Excel文件,它可以简化导出Excel文件这个过程,本文将为大家详细介绍一下它的具体使用,需要的小伙伴可以了解... 目录1. 安装依赖2. 创建vue组件3. 解释代码在Vue.js项目中导出Excel文件,使用第三

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

Python中的随机森林算法与实战

《Python中的随机森林算法与实战》本文详细介绍了随机森林算法,包括其原理、实现步骤、分类和回归案例,并讨论了其优点和缺点,通过面向对象编程实现了一个简单的随机森林模型,并应用于鸢尾花分类和波士顿房... 目录1、随机森林算法概述2、随机森林的原理3、实现步骤4、分类案例:使用随机森林预测鸢尾花品种4.1

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

基于Python实现PDF动画翻页效果的阅读器

《基于Python实现PDF动画翻页效果的阅读器》在这篇博客中,我们将深入分析一个基于wxPython实现的PDF阅读器程序,该程序支持加载PDF文件并显示页面内容,同时支持页面切换动画效果,文中有详... 目录全部代码代码结构初始化 UI 界面加载 PDF 文件显示 PDF 页面页面切换动画运行效果总结主

使用C#如何创建人名或其他物体随机分组

《使用C#如何创建人名或其他物体随机分组》文章描述了一个随机分配人员到多个团队的代码示例,包括将人员列表随机化并根据组数分配到不同组,最后按组号排序显示结果... 目录C#创建人名或其他物体随机分组此示例使用以下代码将人员分配到组代码首先将lstPeople ListBox总结C#创建人名或其他物体随机分组