Mega Code Archive

 
Categories / JavaScript DHTML / Event
 

Mouse cross hairs

//Crosshairs - http://www.btinternet.com/~kurt.grigg/javascript /* Paste this link as the last thing on your page, just before </body></html> <script type="text/javascript" src="crosshairs.js"></script> To edit the colour, right click on the crosshairs.js file icon and choose edit. Avoid using a tiled background image. It causes strange CPU strain in Opera. */ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>CrossHairs</title> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> <meta http-equiv="content-script-type" content="text/javascript"> <meta http-equiv="content-style-type" content="text/css"> <style type="text/css"> <!-- body{ background-color : #ffffff; } //--> </style> </head> <body> <script type="text/javascript"> //Crosshairs - http://www.btinternet.com/~kurt.grigg/javascript if  ((document.getElementById) &&  window.addEventListener || window.attachEvent){ (function(){ var hairCol = "#ff0000"; var d = document; var my = -10; var mx = -10; var r; var vert = ""; var hori = ""; var idx = document.getElementsByTagName('div').length; var thehairs = "<div id='ver"+idx+"' style='position:absolute;top:-2px;left:-2px;" +"height:1px;width:1px;font-size:1px;border-left:dotted 1px "+hairCol+"'><\/div>" +"<div id='hor"+idx+"' style='position:absolute;top:-2px;left:-2px;" +"height:1px;width:1px;font-size:1px;border-top:dotted 1px "+hairCol+"'><\/div>"; document.write(thehairs); var pix = "px"; var domWw = (typeof window.innerWidth == "number"); var domSy = (typeof window.pageYOffset == "number"); if (domWw) r = window; else{    if (d.documentElement &&    typeof d.documentElement.clientWidth == "number" &&    d.documentElement.clientWidth != 0)   r = d.documentElement;  else{    if (d.body &&    typeof d.body.clientWidth == "number")   r = d.body;  } } function hairs(){ if (domWw){  vert.height = r.innerHeight - 2 + pix;  hori.width = '100%';  } else{  vert.height = r.clientHeight - 2 + pix;  hori.width = r.clientWidth + pix;  } } function scrl(yx){ var y,x; if (domSy){  y = r.pageYOffset;  x = r.pageXOffset;  } else{  y = r.scrollTop;  x = r.scrollLeft;  } return (yx == 0)?y:x; } function mouse(e){ var msy = (domSy)?window.pageYOffset:0; if (!e) e = window.event;      if (typeof e.pageY == 'number'){   my = e.pageY - 5 - msy;   mx = e.pageX - 4;  }  else{   my = e.clientY - 6 - msy;   mx = e.clientX - 6;  } vert.top = scrl(0) + pix; vert.left = mx + pix; hori.top = my + scrl(0) + pix; } function ani(){ vert.top = scrl(0) + pix; hori.top = my + scrl(0) + pix; setTimeout(ani,300); } function init(){ vert = document.getElementById("ver"+idx).style; hori = document.getElementById("hor"+idx).style; hairs(); ani(); } if (window.addEventListener){  window.addEventListener("load",init,false);  window.addEventListener("resize",hairs,false);  document.addEventListener("mousemove",mouse,false); }   else if (window.attachEvent){  window.attachEvent("onload",init);  window.attachEvent("onresize",hairs);  document.attachEvent("onmousemove",mouse); }  })(); }//End. </script> </body> </html>