You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
63 lines
2.0 KiB
63 lines
2.0 KiB
2 years ago
|
/**
|
||
|
* COMMON DHTML FUNCTIONS
|
||
|
* These are handy functions I use all the time.
|
||
|
*
|
||
|
* By Seth Banks (webmaster at subimage dot com)
|
||
|
* http://www.subimage.com/
|
||
|
*
|
||
|
* Up to date code can be found at http://www.subimage.com/dhtml/
|
||
|
*
|
||
|
* This code is free for you to use anywhere, just keep this comment block.
|
||
|
*/
|
||
|
|
||
|
/**
|
||
|
* X-browser event handler attachment and detachment
|
||
|
* TH: Switched first true to false per http://www.onlinetools.org/articles/unobtrusivejavascript/chapter4.html
|
||
|
*
|
||
|
* @argument obj - the object to attach event to
|
||
|
* @argument evType - name of the event - DONT ADD "on", pass only "mouseover", etc
|
||
|
* @argument fn - function to call
|
||
|
*/
|
||
|
function addEvent(obj, evType, fn){
|
||
|
if (obj.addEventListener){
|
||
|
obj.addEventListener(evType, fn, false);
|
||
|
return true;
|
||
|
} else if (obj.attachEvent){
|
||
|
var r = obj.attachEvent("on"+evType, fn);
|
||
|
return r;
|
||
|
} else {
|
||
|
return false;
|
||
|
}
|
||
|
}
|
||
|
function removeEvent(obj, evType, fn, useCapture){
|
||
|
if (obj.removeEventListener){
|
||
|
obj.removeEventListener(evType, fn, useCapture);
|
||
|
return true;
|
||
|
} else if (obj.detachEvent){
|
||
|
var r = obj.detachEvent("on"+evType, fn);
|
||
|
return r;
|
||
|
} else {
|
||
|
alert("Handler could not be removed");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Code below taken from - http://www.evolt.org/article/document_body_doctype_switching_and_more/17/30655/
|
||
|
*
|
||
|
* Modified 4/22/04 to work with Opera/Moz (by webmaster at subimage dot com)
|
||
|
*
|
||
|
* Gets the full width/height because it's different for most browsers.
|
||
|
*/
|
||
|
function getViewportHeight() {
|
||
|
if (window.innerHeight!=window.undefined) return window.innerHeight;
|
||
|
if (document.compatMode=='CSS1Compat') return document.documentElement.clientHeight;
|
||
|
if (document.body) return document.body.clientHeight;
|
||
|
return window.undefined;
|
||
|
}
|
||
|
function getViewportWidth() {
|
||
|
if (window.innerWidth!=window.undefined) return window.innerWidth;
|
||
|
if (document.compatMode=='CSS1Compat') return document.documentElement.clientWidth;
|
||
|
if (document.body) return document.body.clientWidth;
|
||
|
return window.undefined;
|
||
|
}
|