html代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="1.js"></script>
</head>
<body>
<input onmouseover="wsug(event,'【提示】<br/>此信息来自病人档案,如需修改请去病人档案处修改。')" onmouseout="wsug(event,0)"/>
</body>
</html>

js代码:

/**
* Created by acer on 2016/7/4.
*/
//鼠标放在input上 出现提示信息
function wsug(e, str) {
var oThis = arguments.callee;
if (!str) {
oThis.sug.style.visibility = 'hidden';
document.onmousemove = null;
return;
}
if (!oThis.sug) {
var div = document.createElement('div'), css = 'top:0; left:0; position:absolute; z-index:100; visibility:hidden';
div.style.cssText = css;
div.setAttribute('style', css);
var sug = document.createElement('div'), css = 'font:normal 12px/16px "宋体"; white-space:nowrap; color:#666; padding:3px; position:absolute; left:0; top:0; z-index:10; background:#f9fdfd; border:1px solid #0aa';
sug.style.cssText = css;
sug.setAttribute('style', css);
var dr = document.createElement('div'), css = 'position:absolute; top:3px; left:3px; background:#333; filter:alpha(opacity=50); opacity:0.5; z-index:9';
dr.style.cssText = css;
dr.setAttribute('style', css);
var ifr = document.createElement('iframe'), css = 'position:absolute; left:0; top:0; z-index:8; filter:alpha(opacity=0); opacity:0';
ifr.style.cssText = css;
ifr.setAttribute('style', css);
div.appendChild(ifr);
div.appendChild(dr);
div.appendChild(sug);
div.sug = sug;
document.body.appendChild(div);
oThis.sug = div;
oThis.dr = dr;
oThis.ifr = ifr;
div = dr = ifr = sug = null;
}
var e = e || window.event, obj = oThis.sug, dr = oThis.dr, ifr = oThis.ifr;
obj.sug.innerHTML = str; var w = obj.sug.offsetWidth, h = obj.sug.offsetHeight, dw = document.documentElement.clientWidth
|| document.body.clientWidth;
dh = document.documentElement.clientHeight || document.body.clientHeight;
var st = document.documentElement.scrollTop || document.body.scrollTop, sl = document.documentElement.scrollLeft
|| document.body.scrollLeft;
var left = e.clientX + sl + 17 + w < dw + sl && e.clientX + sl + 15
|| e.clientX + sl - 8 - w, top = e.clientY + st + 17 + h < dh + st
&& e.clientY + st + 17 || e.clientY + st - 5 - h;
obj.style.left = left + 10 + 'px';
obj.style.top = top + 10 + 'px';
dr.style.width = w + 'px';
dr.style.height = h + 'px';
ifr.style.width = w + 3 + 'px';
ifr.style.height = h + 3 + 'px';
obj.style.visibility = 'visible';
document.onmousemove = function(e) {
var e = e || window.event, st = document.documentElement.scrollTop
|| document.body.scrollTop, sl = document.documentElement.scrollLeft
|| document.body.scrollLeft;
var left = e.clientX + sl + 17 + w < dw + sl && e.clientX + sl + 15
|| e.clientX + sl - 8 - w, top = e.clientY + st + 17 + h < dh
+ st
&& e.clientY + st + 17 || e.clientY + st - 5 - h;
obj.style.left = left + 'px';
obj.style.top = top + 'px';
}
}

页面显示:

input输入浮动提示的更多相关文章

  1. DataList:HTML5中的input输入框自动提示宝器

    DataList的作用是在你往input输入框里输入信息时,根据你敲进去的字母,自动显示一个提示下列列表,很像百度或谷歌的搜索框的自动提示,在飞机票火车票的搜索页面上也有这样的效果.它是HTML5里新 ...

  2. Js_Ajax_输入词提示

    输入"1",有提示,否则没有 suggest.jsp #suggest { background-color: #e0e0e0; width: 200px; } var xhr; ...

  3. jquery 实现邮箱输入自动提示功能:(二)

    上篇文章写到了一个不错的jquery实现邮箱输入自动提示功能,发现还有一个不错的自动提示插件: 先展示结果如图: html代码: <center> <h1>输入邮箱试试!< ...

  4. jquery 实现邮箱输入自动提示功能:(一)

    记得去年做某个项目的时候,用到了邮箱输入自动提示功能,于是网上搜了一下,发现了这个写得不错,现在回想起来,转载一下,方便查阅. 邮箱的广泛使用得益于它的免费,因此很多网站在注册的时候都会直接使用邮箱作 ...

  5. jQuery 下拉框输入匹配提示选项

    做页面输入时,为方便输入和提高用户体验,常用下拉框,当下拉选项数据很多时,也不易找到想要的选项,这时,提供一种下拉框输入匹配提示选项,如下: 图示

  6. input输入样式,动画

    模板描述:input输入样式 动画,有输入框也有搜索框的样式,多种多样,大家根据自己的喜欢来. 找网站SEO教程,网站模板,以及想要建立个人博客的朋友来涂志海个人博客网,这里有你想要的一切(万一没有的 ...

  7. input输入子系统

    一.什么是input输入子系统? 1.Linux系统支持的输入设备繁多,例如键盘.鼠标.触摸屏.手柄或者是一些输入设备像体感输入等等,Linux系统是如何管理如此之多的不同类型.不同原理.不同的输入信 ...

  8. 限制input输入类型(多种方法实现)

    1.只能输入和粘贴汉字 <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste= ...

  9. 限制Input输入类型的常见代码集合

    搜集整理常见的限制INPUT输入类型的实现方式: 1.只能输入和粘贴汉字 <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g ...

随机推荐

  1. 3、Java并发编程:Thread类的使用

    Java并发编程:Thread类的使用 在前面2篇文章分别讲到了线程和进程的由来.以及如何在Java中怎么创建线程和进程.今天我们来学习一下Thread类,在学习Thread类之前,先介绍与线程相关知 ...

  2. Hackerrank - [Algo] Matrix Rotation

    https://www.hackerrank.com/challenges/matrix-rotation-algo 又是一道耗了两小时以上的题,做完了才想起来,这不就是几年前在POJ上做过的一个同类 ...

  3. Qt 解析网络数据出现ssl错误

    最近写了点小东西,哈哈, 网络部分是同学帮我搞的 在编译的时候,出现了一下错误 qt.network.ssl: QSslSocket: cannot call unresolved function ...

  4. 自动化测试(一)-get和post的简单应用

    今天主要介绍两种测试的接口post和get: get和post是http的两种基本请求方式,区别在于get把参数包含在url中传递:给而post把参数以json或键值对的方式利用工具传递. get的传 ...

  5. 第二十二篇 正在表达式 re模块

    re模块****** 就本质而言,正则表达式时一种小型的,高度专业化的编程语言,在python里,它内嵌在python中,并通过re模块实现.正则表达式模式被编译成一系列的字节码.然后用C编写的匹配引 ...

  6. highcharts图表插件初探

    转载请注明出处:http://www.cnblogs.com/liubei/p/highchartsOption.html HighCharts简介 Highcharts 是一个用纯JavaScrip ...

  7. 团队作业4——第一次项目冲刺(Alpha版本)-第三篇

    项目冲刺——第三阶段 前两阶段很ok,目测这三天可以搞定! 分工讨论 大体上搞定,设置困难度的功能还未完成. 团队成员 任务 郭达  整合各种代码 刘德培  数据库完善和其他人对接 石浩洋  完善PH ...

  8. PAT 1045 快速排序

    https://pintia.cn/problem-sets/994805260223102976/problems/994805278589960192 著名的快速排序算法里有一个经典的划分过程:我 ...

  9. Python数据分析(一)pandas数据切片

    1.获取行或列数据 loc——通过行标签索引行数据 iloc——通过行号索引行数据 ix——通过行标签或者行号索引行数据(基于loc和iloc 的混合) 同理,索引列数据也是如此! import pa ...

  10. gdb调试命令的使用及总结

    gdb调试命令的使用及总结 gdb是一个在UNIX环境下的命令行调试工具.如果需要使用gdb调试程序,请在gcc时加上-g选项.下面的命令部分是简化版,比如使用l代替list等等. 1.基本命令 命令 ...