Fancy tooltips with an “arrow” pointer are commonly found in desktop applications. Well, now you can add a similarly looking tooltip to your webpage. Works in IE4+, NS6+, Firefox 3+, Safari, and Opera 7+. Note that the pointer image disappears if the tooltip is too close to the edges of the browser window.

Installation:
Step 1: Insert the following stylesheet into the <head> section of your page:

<style type="text/css">
#baotrang
{
margin: 0 auto;
width: 700px;
padding-top: 250px;
}
#bienthuy{
position: absolute;
left: -300px;
width: 150px;
border: 1px solid black;
padding: 2px;
background-color: lightyellow;
visibility: hidden;
z-index: 100;
/*Remove below line to remove shadow. Below line should always appear last within this CSS*/
filter: progid:DXImageTransform.Microsoft.Shadow(color=gray,direction=135);
}
#huyhoa{
position:absolute;
left: -300px;
z-index: 101;
visibility: hidden;
}
 
</style>

Step 2: Insert the below code into the <body> section of your page, outside any other tags, especially relatively or absolutely positioned elements:

<script type="text/javascript">
/*
* Shared by BienThuy.Com
* www.BienThuy.Com
* wWw.HuyHoa.Com
* [email protected]
* Yahoo: huyhoa
* Skype: admin.vtt
* Facebook: https://www.facebook.com/bienthuywebsite
* Twitter: https://www.twitter.com/bienthuywebsite
* @ 2013. All Rights Reserved.
*/
var offsetfromcursorX=12 //Customize x offset of tooltip
var offsetfromcursorY=10 //Customize y offset of tooltip
 
var offsetdivfrompointerX=10 //Customize x offset of tooltip DIV relative to pointer image
var offsetdivfrompointerY=14 //Customize y offset of tooltip DIV relative to pointer image. Tip: Set it to (height_of_pointer_image-1).
 
document.write('<div id="bienthuy"></div>') //write out tooltip DIV
document.write('<img id="huyhoa" src="/ht/arrow2.gif">') //write out pointer image
 
var ie=document.all
var ns6=document.getElementById && !document.all
var enabletip=false
if (ie||ns6)
var tipobj=document.all? document.all["bienthuy"] : document.getElementById? document.getElementById("bienthuy") : ""
 
var pointerobj=document.all? document.all["huyhoa"] : document.getElementById? document.getElementById("huyhoa") : ""
 
function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}
 
function ddrivetip(thetext, thewidth, thecolor){
if (ns6||ie){
if (typeof thewidth!="undefined") tipobj.style.width=thewidth+"px"
if (typeof thecolor!="undefined" && thecolor!="") tipobj.style.backgroundColor=thecolor
tipobj.innerHTML=thetext
enabletip=true
return false
}
}
 
function positiontip(e){
if (enabletip){
var nondefaultpos=false
var curX=(ns6)?e.pageX : event.clientX+ietruebody().scrollLeft;
var curY=(ns6)?e.pageY : event.clientY+ietruebody().scrollTop;
//Find out how close the mouse is to the corner of the window
var winwidth=ie&&!window.opera? ietruebody().clientWidth : window.innerWidth-20
var winheight=ie&&!window.opera? ietruebody().clientHeight : window.innerHeight-20
 
var rightedge=ie&&!window.opera? winwidth-event.clientX-offsetfromcursorX : winwidth-e.clientX-offsetfromcursorX
var bottomedge=ie&&!window.opera? winheight-event.clientY-offsetfromcursorY : winheight-e.clientY-offsetfromcursorY
 
var leftedge=(offsetfromcursorX<0)? offsetfromcursorX*(-1) : -1000
 
//if the horizontal distance isn't enough to accomodate the width of the context menu
if (rightedge<tipobj.offsetWidth){
//move the horizontal position of the menu to the left by it's width
tipobj.style.left=curX-tipobj.offsetWidth+"px"
nondefaultpos=true
}
else if (curX<leftedge)
tipobj.style.left="5px"
else{
//position the horizontal position of the menu where the mouse is positioned
tipobj.style.left=curX+offsetfromcursorX-offsetdivfrompointerX+"px"
pointerobj.style.left=curX+offsetfromcursorX+"px"
}
 
//same concept with the vertical position
if (bottomedge<tipobj.offsetHeight){
tipobj.style.top=curY-tipobj.offsetHeight-offsetfromcursorY+"px"
nondefaultpos=true
}
else{
tipobj.style.top=curY+offsetfromcursorY+offsetdivfrompointerY+"px"
pointerobj.style.top=curY+offsetfromcursorY+"px"
}
tipobj.style.visibility="visible"
if (!nondefaultpos)
pointerobj.style.visibility="visible"
else
pointerobj.style.visibility="hidden"
}
}
 
function hideddrivetip(){
if (ns6||ie){
enabletip=false
tipobj.style.visibility="hidden"
pointerobj.style.visibility="hidden"
tipobj.style.left="-1000px"
tipobj.style.backgroundColor=''
tipobj.style.width=''
}
}
 
document.onmousemove=positiontip
 
</script>

 

Step 3: The script uses a pointer image. Download the below:

DHTML Tooltips Arrow2 (right click image, and select “Save As”).

Note that you can use your own custom image in place of the above if you wish.
Step 4: Finally, add the following inside any link or element that will contain a tooltip:

onMouseover="ddrivetip('JavaScriptKit.com JavaScript tutorials', 300)";
onMouseout="hideddrivetip()"

Example:  Link: A Href Tag

<a href="https://www.bienthuy.com" onMouseover="ddrivetip('Visit Bien Thuy Website, wWw.BienThuy.Com for more tips and tools')";
onMouseout="hideddrivetip()">Biên Thùy</a>  ||  <a href="https://www.tinhcaviet.com" onMouseover="ddrivetip('Visit Tinh Ca Viet for Music and Funny Pictures')";
onMouseout="hideddrivetip()">Tình Ca Việt</a>  ||  <a href="https://www.huyhoa.com" onMouseover="ddrivetip('Visit Huy Hoa Website')";
onMouseout="hideddrivetip()">Huy Hòa</a>

In DIV tag:

<div onMouseover="ddrivetip('Bien Thuy\'s Site', 250)";
 onMouseout="hideddrivetip()">This is a DIV. This is a DIV.</div>

Demo:https://demo.bienthuy.com/html/dhtml-tooltip/

4.8/5 - (2684 bình chọn)

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *