<!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. 【Linux】CentOS安装redis

    CENTOS7下安装REDIS 安装完成之后使用:redis-cli命令连接,如图: 提示:/var/run/redis_6379.pid exists, process is already run ...

  2. getGeneratedKeys自动获取主键的方法

    public class Demo { public static void main(String[] args) { try { String sql="insert into pers ...

  3. codesandbox

    codesandbox https://codesandbox.io https://codesandbox.io/dashboard https://codesandbox.io/dashboard ...

  4. delphi 更改DBGrid 颜色技巧

    1.根据条件更改某一单元格的颜色 procedure TMainFrm.First_DGDrawColumnCell(Sender: TObject; const Rect: TRect; DataC ...

  5. Delphi DBGridEH中,选中行、列、单元格

    // 新增行后,默认首列 procedure TForm1.ADOQuery1AfterInsert(DataSet: TDataSet);begin  with DBGridEh1 do  begi ...

  6. 【Python】爬虫与反爬虫大战

    爬虫与发爬虫的厮杀,一方为了拿到数据,一方为了防止爬虫拿到数据,谁是最后的赢家? 重新理解爬虫中的一些概念 爬虫:自动获取网站数据的程序反爬虫:使用技术手段防止爬虫程序爬取数据误伤:反爬虫技术将普通用 ...

  7. CentOS expr和let

    1.expr,用于计算变量等 用法:expr 表达式 用例1: #运算符号和参数之间要有空格分开:[es@bigdata-senior01 ~]$ expr 2 + 3 5 #乘号(*)需要用 \ , ...

  8. P2672 推销员 优先队列 + 贪心

    ---题面--- 题解: 我会说我想这道普及组题都想了好久么.... 不熟练的普及组选手.jpg 最后随便猜了一个结论居然是对的... 放结论: 假设x = i的最优决策为f[i], 那么f[i + ...

  9. POJ2115:C Looooops——题解

    http://poj.org/problem?id=2115 题目大意:for(i=A;i!=B;i+=C),i的类型的范围为0<=a<1<<k exgcd裸题目. 设a=C, ...

  10. BZOJ3926:[ZJOI2015]诸神眷顾的幻想乡——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=3926 https://www.luogu.org/problemnew/show/P3346 幽香 ...