直接上代码:


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. maven+spark2.0.0最大连通分量

    运用到了spark2.0.0的grarhx包,要手动的在pom.xml里面添加依赖包,要什么就在里面添加依赖,然后在run->maven install

  2. AndroidManifest.xml详解(下)

    本文编辑整理自:http://blog.163.com/hero_213/blog/static/39891214201242835410742/ 八.第三层<activity-alias> ...

  3. API Monitor v2.0 Alpha-r13 (32+64) 汉化版

    API Monitor v2.0 Alpha-r13 (32+64) 汉化版: 链接: https://pan.baidu.com/s/1jIx5znC 密码: 4538 本软件已最大化汉化,已经趋于 ...

  4. Expression2Sql的一些语法更新

    前言 前一阵子给大家介绍了一个可以将Expression表达式树解析成Transact-SQL的项目Expression2Sql. 之后得到了广大读者的一些好评,也使得博主更有动力继续更新下去,然后一 ...

  5. cocoapods使用一直Updating local specs repositories的解决方案

    pod install 换成pod install --verbose --no-repo-update这个命令,前面的命令被墙了 ,<pre id="best-content-226 ...

  6. [好文要转]【关于block使用的5点注意事项】

    1.在使用block前需要对block指针做判空处理. 不判空直接使用,一旦指针为空直接产生崩溃. if (!self.isOnlyNet) { if (succBlock == NULL) { // ...

  7. CocoaPods使用 主要带图。转载。

    原文地址 快速更新,不需要查找更新库 命令:pod update  --verbose --no-repo-update 虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了 ...

  8. JavaScript中的各种宽高属性

    转自慕课网:http://www.imooc.com/article/14516   在js中,存在着N多的关于高度和宽度的属性,比如:clientHeight.offsetHeight.scroll ...

  9. 如何把 Callback 接口包装成 Promise 接口

    最近一段时间一直在看Node.js,在开发过程中经常要调用一些异步接口,通常在接口的最后一个参数会传入一个回调函数,可以用来处理异常,非异常情况.大致模式如下: var fs = require(“f ...

  10. Linux系统下配置Tomcat

    1.将下载好的tomcat文件拷贝至/usr/java文件夹中: cp apache-tomcat-7.0.72.tar.gz /usr/java 2.进入/usr/java文件夹: cd /usr/ ...