<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0033)https://192.168.1.2/topframe6.htm -->
<HTML><HEAD><TITLE>topframe</TITLE>
<META http-equiv=Content-Type content="text/html; charset=utf-8">
<link href="css/base.css" rel="stylesheet" type="text/css"> <SCRIPT language=JavaScript>
var currentid = "c1";
function openurl2(newid, url1, url2)
{
document.getElementById(currentid).className = "";
document.getElementById(newid).className = "current";
currentid = newid; window.parent.document.getElementById("menu").src = url1;
window.parent.document.getElementById("content").src = url2;
} function myrefresh()
{
window.parent.frames["topframe"].location.reload();
}
setTimeout('myrefresh()',600000); function blink (err_id) {
var code = '';
var speed = 500; code += 'var el = document.getElementById("' + err_id + '");';
code += 'el.style.visibility = ' + 'el.style.visibility == "hidden" ? "visible" : "hidden"'; var interval=setInterval(code,speed);
var desc_id=document.getElementById("desc_err");
desc_id.onmouseover=function(){clearInterval(interval)}
desc_id.onmouseout=function(){interval=setInterval(code,speed)}
}
function stateOnload() {
blink('desc_err');
}
</SCRIPT>
</HEAD> <BODY ONLOAD="stateOnload()" style="padding:0px">
<div id="top">
<div id="logo"></div>
<div>
<div id="list">
<UL>
<LI id=c1 class=current>
<A href="javascript:openurl2('c1', '/View/menu', '/undefined')">查看</A>
</LI>
<LI id=c2><A href="javascript:openurl2('c2', '/Manage/menu', '/undefined')">管理</A></LI>
<LI id=c3><A href="javascript:openurl2('c3', '/Maintain/menu', '/undefined')">维护</A></LI>
</UL>
</div>
{% module Workstate() %}
    //<div id="desc_err"><A href="javascript:openurl2(\'c1\', \'/View/menu\', \'/View/faultyinfo\')">工作故障</A></div>
</div>
</div> </BODY>
</HTML>

上述代码说明:

1.function myrefresh():实现定时刷新top.htm页面

window.parent.frames["topframe"].location.reload();

2.function blink (err_id):实现字体闪烁

desc_id.onmouseover=function(){clearInterval(interval)}                --鼠标位于字体上时,停止闪烁,以便点击进行超链接

desc_id.onmouseout=function(){interval=setInterval(code,speed)}  --鼠标离开字体上时,继续闪烁

3.代码第56行{% module Workstate() %}

实际代码为:<div id="desc_err"><A href="javascript:openurl2(\'c1\', \'/View/menu\', \'/View/faultyinfo\')">工作故障</A></div>

当点击字体之后连接到/View/faultyinfo,通过JS函数function openurl2(newid, url1, url2)将整个页面的几个框架(FRAME)分别进行链接

4.setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式。

提示:setTimeout() 只执行 code 一次。如果要多次调用,请使用 setInterval() 或者让 code 自身再次调用 setTimeout()。

简单示例:

 <html>
<head>
<script type="text/javascript">
var c=0
var t
function timedCount()
{
document.getElementById('txt').value=c
c=c+1
t=setTimeout("timedCount()",1000)
}
</script>
</head> <body>
<form>
<input type="button" value="开始计时!" onClick="timedCount()">
<input type="text" id="txt">
</form>
<p>请点击上面的按钮。输入框会从 0 开始一直进行计时。</p>
</body> </html>

5.setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

简单示例:

 <html>
<body> <input type="text" id="clock" size="35" />
<script language=javascript>
var int=self.setInterval("clock()",50)
function clock()
{
var t=new Date()
document.getElementById("clock").value=t
}
</script>
<button onclick="int=window.clearInterval(int)">Stop interval</button> </body>
</html>

PS:

起初实现文字闪烁代码如下:

 function blink (elId) {
var html = '';
if (document.all)
html += 'var el = document.all.' + elId + ';';
else if (document.getElementById)
html += 'var el = document.getElementById("' + elId + '");';
html += 'el.style.visibility = ' + 'el.style.visibility == "hidden" ? "visible" : "hidden"';
if (document.all || document.getElementById)
setInterval(html, 500)
}

1.document.all是页面内所有元素的一个集合。例如:document.all(0)表示页面内第一个元素

2.document.all可以判断浏览器是否是IE  
  if(document.all){  
    alert("is   IE!");  
  }

3.可以通过给某个元素设置id属性(id=aaaa),然后用document.all.aaaa调用该元素

综上:

  当在IE浏览器执行时进入 :if (document.all)

  当在其他浏览器执行时进入:else if (document.getElementById)

这里舍弃document.all,直接使用document.getElementById

HTML JS文字闪烁实现(项目top.htm分析)的更多相关文章

  1. js文字颜色闪烁

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 【android】TabLayout文字闪烁问题

    安卓MD设计提供了一个非常酷炫的效果,TabLayout拿来做选项卡时非常合适的,但是在实际使用中发现22.2.1版本号的TabLayout在ViewPager滑动的时候会出现闪烁现象. 解决方法:在 ...

  3. js文字向上滚动代码

    js文字向上滚动代码 <style>.pczt_pingfen_jhxs_news1{ width:397px;  background:#edfafd; padding-top:2px; ...

  4. 利用JS实现闪烁字体

    以下为在JSP文件中,利用JS实现闪烁字体的代码: HTML代码: <div id="blink">一段会闪烁的字</div> JavaScript代码: ...

  5. .NET开源项目 TOP 25

    .NET开源项目 TOP 25 如果知道.NET项目在开源中国的git上所占的比重只有5%的话,为什么这个<2014年国人开发的最热门的开源软件TOP 100>榜中.NET项目那么少就是情 ...

  6. js文字展示各种滚动效果

    js文字展示各种滚动效果:http://www.dowebok.com/demo/188/

  7. Vue.js开始第一个项目

    前端架构之路:使用Vue.js开始第一个项目   Vue.js做为目前前端最热门的库之一,为快速构建并开发前端项目多了一种思维模式.本文通过一个简单的实例开始上手Vue.js开发. 一.技术准备 使用 ...

  8. 新建一个基于vue.js+Mint UI的项目

    上篇文章里面讲到如何新建一个基于vue,js的项目(详细文章请戳用Vue创建一个新的项目). 该项目如果需要组件等都需要自己去写,今天就学习一下如何新建一个基于vue.js+Mint UI的项目,直接 ...

  9. Node.js 实战 & 最佳 Express 项目架构

    Node.js 实战 & 最佳 Express 项目架构 Express Koa refs https://github.com/xgqfrms/learn-node.js-by-practi ...

随机推荐

  1. C#中的unsafe

    为了保持类型安全性,默认情况下,C# 不支持指针算法. 但是,通过使用 unsafe 关键字,可以定义可在其中使用指针的不安全上下文. 有关指针的详细信息,请参阅主题指针类型. 备注 在公共语言运行时 ...

  2. jQuery实现三级联动

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  3. BZOJ4754 JSOI2016独特的树叶(哈希)

    判断两棵无根树是否同构只需要把重心提作根哈希即可.由于只添加了一个叶子,重心的位置几乎不发生偏移,所以直接把两棵树的重心提起来,逐层找哈希值不同且对应的两子树即可.被一个普及组子问题卡一年. #inc ...

  4. NetScaler SNIPs Bound To An Interface Without A VLAN

    NetScaler SNIPs Bound To An Interface Without A VLAN https://www.citrix.com/blogs/2014/04/09/work-yo ...

  5. 【刷题】UOJ #171 【WC2016】挑战NPC

    小 N 最近在研究 NP 完全问题,小 O 看小 N 研究得热火朝天,便给他出了一道这样的题目: 有 \(n\) 个球,用整数 \(1\) 到 \(n\) 编号.还有 \(m\) 个筐子,用整数 \( ...

  6. 【CSU1911】Card Game(FWT)

    [CSU1911]Card Game(FWT) 题面 vjudge 题目大意: 给定两个含有\(n\)个数的数组 每次询问一个数\(x\),回答在每个数组中各选一个数,或起来之后的结果恰好为\(x\) ...

  7. Linux之SSL安全套接字20160704

    使用SSL前,先有 基本的TCP套接字连接.见demo代码 SSL_library_init();//在使用OpenSSL 之前,必须进行相应的协议初始化工作 OpenSSL_add_all_algo ...

  8. 使用Google的CDN JQuery库

    CDN的全称是Content Delivery Network,即内容分发网络.其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络"边缘" ...

  9. HDU2841 (队列容斥)

    Visible TreesTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  10. tcpdump抓取ftp密码

    步骤: 1.登陆ftp服务器,执行命令: tcpdump -i wlan0 -w password.bin -c 500 port 21 2.有人登陆后,执行: tcpdump -v -XX -r p ...