直接上代码:


var str = "";

document.writeln("<div id=\"_contents\" tabindex=9999 onblur=\"hideSetTime()\" style=\"padding:6px; background-color:#E3E3E3; font-size: 12px; border: 1px solid #777777; position:absolute; left:?px; top:?px; width:?px; height:?px; z-index:1; visibility:hidden\">");

str += "\u65f6<select id=\"_hour\"  style='width:65px' onchange='changeHour()'>";

for (h = 0; h <= 9; h++) {

str += "<option value=\"0" + h + "\">0" + h + "</option>";

}

for (h = 10; h <= 24; h++) {

str += "<option value=\"" + h + "\">" + h + "</option>";

}

str += "</select> \u5206<select id=\"_minute\"  style='width:65px'>";

for (m = 0; m <= 9; m++) {

str += "<option value=\"0" + m + "\">0" + m + "</option>";

}

for (m = 10; m <= 59; m++) {

str += "<option value=\"" + m + "\">" + m + "</option>";

}

str += "</select> \u79d2<select id=\"_second\"  style='width:65px;display:none;'>";

for (s = 0; s <= 9; s++) {

str += "<option value=\"0" + s + "\">0" + s + "</option>";

}

for (s = 10; s <= 59; s++) {

str += "<option value=\"" + s + "\">" + s + "</option>";

}

str += "</select> <input name=\"queding\" type=\"button\" onclick=\"_select()\" value=\"\u786e\u5b9a\" style=\"font-size:12px\" /></div>";

document.writeln(str);

var _fieldname;

function _SetTime(tt) {

_fieldname = tt;

var ttop = tt.offsetTop;    //TT控件的定位点高

var thei = tt.clientHeight;    //TT控件本身的高

var tleft = tt.offsetLeft;    //TT控件的定位点宽

while (tt = tt.offsetParent) {

ttop += tt.offsetTop;

tleft += tt.offsetLeft;

}

document.getElementById("_contents").style.top = ttop + thei + 4+"px";

document.getElementById("_contents").style.left = tleft+"px";

document.getElementById("_contents").style.visibility = "visible";

document.getElementById("_contents").focus();

}

function _select() {

_fieldname.value = document.getElementById("_hour").value + ":" + document.getElementById("_minute").value;

document.getElementById("_contents").style.visibility = "hidden";

}

function hideSetTime(){

document.getElementById("_contents").style.visibility = "hidden";

}

function changeHour(){

if(document.getElementById("_hour").value==24){

_fieldname.value="24:00";

document.getElementById("_contents").style.visibility = "hidden";

}

}


问题:如果是失去焦点的时候隐藏?

解决:一般onblur事件是给form表单的input、按钮等使用,如果要给div、span、a.....等等这类标签使用的话,要加tabindex.

tabindex=9999 onblur=\"hideSetTime()\"

这样便可以在div中加onblur事件。

你是不是也遇到这种问题呢?(*^__^*) 嘻嘻……

js小时分钟控件--的更多相关文章

  1. React.js 小书 Lesson23 - dangerouslySetHTML 和 style 属性

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson23 转载请注明出处,保留原文链接和作者信息. 这一节我们来补充两个之前没有提到的属性,但是在 ...

  2. React.js 小书 Lesson15 - 实战分析:评论功能(二)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson15 转载请注明出处,保留原文链接和作者信息. 上一节我们构建了基本的代码框架,现在开始完善其 ...

  3. React.js 小书 Lesson14 - 实战分析:评论功能(一)

    作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson14 转载请注明出处,保留原文链接和作者信息. 课程到这里大家已经掌握了 React.js 的 ...

  4. js小功能整理

    /** * 判断是否包含字符串某字符串 * @param {[type]} str [被检测的字符串] * @param {[type]} substr [检测是否含有的字符串] * @return ...

  5. [转载]Js小技巧||给input type=“password”的输入框赋默认值

    http://www.cnblogs.com/Raywang80s/archive/2012/12/06/2804459.html [转载]Js小技巧||给input type="passw ...

  6. 一些js小题(一)

    一些js小题,掌握这些对于一些常见的面试.笔试题应该很有帮助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1 ...

  7. JS数量输入控件

    JS数量输入控件 很早看到kissy首页 有数量输入控件,就随便看了下功能 感觉也不怎么难 所以也就试着自己也做了一个, 当然基本的功能和他们的一样,只是用了自己的编码思想来解决这么一个问题.特此给大 ...

  8. 用js给html控件赋值

      用js给html控件赋值 <script> window.onload=function setValue()//在页面加载时赋值 { document.getElementById( ...

  9. 第24篇 js小知识和“坑”

    前面说了说了js的相关知识,基本上除了语法外,把项目常用的知识做了一个梳理,现在说下js的其它方面的知识,这些知识不成体系,属于不理解对于一般开发没什么太多影响,但如果理解清楚,可以更好去开发. js ...

随机推荐

  1. tableau 连接R语言

    如何开始使用 Tableau 与 R? 对于已经熟悉 R 及其功能的用户而言,在 R 与 Tableau 之间建立连接非常简单.以 下说明适用于基于开源版 R 的新安装.其他一些方案也可能使用其他程序 ...

  2. mac终端命令大全介绍(转)

    OSX 的文件系统 OSX 采用的Unix文件系统,所有文件都挂在跟目录 / 下面,所以不在要有Windows 下的盘符概念. 你在桌面上看到的硬盘都挂在 /Volumes 下. 比如接上个叫做 US ...

  3. iframe在浏览器中session失效问题

    iis中右击项目属性http头 添加一个http头 X-UA-Compatible 自定义http头值 IE=EmulateIE7 这样设置后就可以了

  4. [bzoj1122][POI2008]账本BBB

    1122: [POI2008]账本BBB Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 402  Solved: 202[Submit][Status ...

  5. github项目配置

    准备工作: 下载一个git:  https://git-scm.com/downloads 1.登陆到github 登陆地址:https://github.com/login 2.创建新项目 3.配置 ...

  6. stm32cube--ADC单次转换

    stm32cube的ADC配置 ① ② ③ ④ ⑤ 二:用到的函数 HAL_StatusTypeDef       HAL_ADCEx_Calibration_Start(ADC_HandleType ...

  7. contiki-定时器etimer

    Contiki内核是基于事件驱动和Protothreads机制,事件既可以是外部事件(比如按键,数据到达),也可以是内部事件(如时钟中断).定时器的重要性不言而喻,Contiki提供了5种定时器模型, ...

  8. 分组找ID

    select t.name1,t.name2,t.zx from (select row_number()over(partition by name1 order by zx desc)rn, te ...

  9. 使用Asp.Net Core Identity给用户添加及删除角色

    基于Asp.Net Core编制一个项目,需要给用户添加及删除角色的功能,于是使用到了Identity中的UserManager. 先后解决了几个问题,终于实现了设想. 1. 环境条件 Asp.Net ...

  10. k.APR通道特殊配置

    APR/native specific configuration The following attributes are specific to the APR/native connector. ...