文档章节

兼容主流浏览器的网页闹钟

J
 JB晨
发布于 2014/06/26 15:26
字数 403
阅读 51
收藏 0
//下面是要用到的全局变量
var songSrc="";     //铃声路径
var clickTime=null; //按键时的即时时间
//判断是否为数字
function nanFilter(event){
    var eve=window.event||event;
    var code=eve.keyCode||eve.which;
    if(code<48&&code!=8||code>57){
        return false;
    }
    return true;
}
/*
    大家可以看到,此处做了两种兼容性的处理:
    1对于事件对象的IE和标准浏览器
    2对于按键值的兼容
    有一点需要注意,Backspace回退键不需要过滤
*/
 
function isOldIE(){
    var mode=document.documentMode;
    var activeX=window.ActiveXObject;
    //是否为IE
    if(activeX){
        //为IE 8或渲染模式为IE 8或不支持mode(IE 6,7)
        if(!mode||mode<9){
            return true;
        }
    }
    return false;
}
/*
   此处用到了mode,这是IE独有的玩意儿,可用于判断IE的版本或者内核的渲染
*/

function getBgSoundElement(){
    var bgsoundElement=null;
    //IE 6,7,8
    if(window.isOldIE()){
        bgsoundElement=document.createElement("bgsound");
    }
    else{
        bgsoundElement=document.createElement("audio");
    }
    return bgsoundElement;
}
/*
   关键性的代码,用于动态创建音频元素,此处做了兼容性处理


*/

function bindAttribute(bgSoundElement){
    bgSoundElement.setAttribute("src",songSrc);
    if(bgSoundElement.nodeName=="AUDIO"){
        bgSoundElement.setAttribute("autoplay","autoplay");
    }
}
/*
   绑定自动播放属性及路径到元素
*/

function getMilliseconds(hours,minutes,seconds){
    var date=new Date();
    if(hours&&hours>=0&&hours<=23){
        date.setHours(hours);
    }
    if(minutes&&minutes>=0&&minutes<=59){
        date.setMinutes(minutes);
    }
    if(seconds&&seconds>=0&&seconds<=59){
        date.setSeconds(seconds);
    }
    return date.getTime();
}
/*
   根据时分秒获取毫秒数
*/

function disableAllInput(){
    var inputs=document.getElementsByTagName("input");
    for(var i in inputs){
        inputs[i].disabled=true;
    }
}
/*
   将页面上所有控件禁用主要的工作已经完成了,剩下的就靠组装了~~
*/

© 著作权归作者所有

共有 人打赏支持
J
粉丝 0
博文 3
码字总数 919
作品 0
长沙
私信 提问
加载中

评论(2)

kofack
kofack
79
kofack
kofack
膜拜
html5 websocket如果在众多浏览器中实现,你会选择用它代替ajax么

websocket 保持网页与服务器的tcp通讯连接,数据传输量小,效率高,通讯及时。 目前各大主流浏览器已经兼容。 如果你的用户是完全使用主流浏览器的,你会选择用它代替ajax么?...

那天早上
2013/10/16
763
4
IETester 7.3.3 发布,多版本 IE 浏览器

IETester 7.3.3 发布,该版本修复了在 Win7+ 系统上从 DebugBar 菜单中启动 IETester 时出现“IETester not found” 的问题。 在设计网页的时候,不得不考虑浏览器兼容问题,就IE在市场上就有...

oschina
2014/08/24
4K
18
多内核IE浏览器--IETester

在设计网页的时候,不得不考虑浏览器兼容问题,就IE在市场上就有好几个版本在使用,而每个版本对CSS的解析方式都会有些许的差别,要做到兼容各 种主流浏览器,我们首先要做的当然是安装各种不...

匿名
2009/12/21
14.1K
0
ECMA Script 6 成绩 72% 的新 Edge 内核

IE6 的辉煌没有人能够忘记,但随着 Webkit 系的崛起,原开发团队被拆散分配至其它产品的 IE 开始被消费者认为是“卡、慢、丑”的象征。终于,微软开始为 IE 打造新的 Edge 引擎。至少从数据上...

oschina
2014/11/26
5.1K
41
PSD转HTML5前端切图、移动WEB、响应式

html5前端服务老牌公司。 提供专业的网页切图服务,8年以上web前端开发经验,曾今为电信、多美滋、陆虎、雪佛兰等企业提供服务,基于html5文档申明规范,html5/css3布局,jquery手写网页特效...

专注做前端
2016/08/19
1
0

没有更多内容

加载失败,请刷新页面

加载更多

TiDB 3.0 Beta Release Notes

2019 年 1 月 19 日,TiDB 发布 3.0 Beta 版,对应 master branch 的 TiDB-Ansible。相比 2.1 版本,该版本对系统稳定性、优化器、统计信息以及执行引擎做了很多改进。 TiDB 新特性 支持 Vi...

TiDB
12分钟前
2
0
从拼多多优惠券事件看到的一些反思

本文由云+社区发表 作者:颜国平 摘要:最近几年,电商行业飞速发展,各种创业公司犹如雨后春笋大量涌现,商家通过各种活动形式的补贴来获取用户、培养用户的消费习惯,即将到来的“ 购物狂欢...

腾讯云加社区
13分钟前
3
0
记录一次BUG

1: 请求注册页面时生成一个UUID, 并且将UUID隐藏在页面中并且添加到session中去。 2: 发送短信时获取手机号和UUID,将两者发送至服务器 3: 先判断UUID和session中UUID是否一致。 不一致就...

专业写BUG的程序员
18分钟前
1
0
阿里云漏洞提示:phpMyAdmin <=4.8.1 checkPageValidity函数缺陷可导致GETSHELL

如题: phpMyAdmin <=4.8.1 后台checkPageValidity函数缺陷可导致GETSHELL 即:checkPageValidity函数对外部输入过滤不严,可导致本地包含任意文件。进一步地攻击者可通过注入代码到特定文件...

408582708
18分钟前
1
0
PyTorch可视化理解卷积神经网络

摘要: 神经网络工具像一个黑匣子,无法知道它的中间是如何处理的。本文使用图片加代码的形式讲解CNN网络,并对每层的输出进行可视化,便于初学者理解,可以动手实践下哦! 如今,机器已经能...

阿里云官方博客
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部