Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (function() {
- /*Calculation of the parameters window*/
- function afParametersWindow() {
- var param = {};
- var d = parent.document, db = d.body, de = d.documentElement, dc = d.compatMode == "CSS1Compat";
- param.cw = dc && de.clientWidth || self.innerWidth || db.clientWidth;
- param.ch = dc && de.clientHeight || self.innerHeight || db.clientHeight;
- param.sl = self.pageXOffset || dc && de.scrollLeft || db.scrollLeft;
- param.st = self.pageYOffset || dc && de.scrollTop || db.scrollTop;
- param.sh = dc && de.scrollHeight || db.scrollHeight || db.offsetHeight;
- param.sw = dc && de.scrollWidth || db.scrollWidth || db.offsetWidth;
- param.sh = param.sh < param.ch ? param.ch : param.sh;
- return param;
- }
- /*Calculation position (left and top) and size (width and height) object*/
- function afParametersObject(obj) {
- var param = {};
- param.w = obj.offsetWidth;
- param.h = obj.offsetHeight;
- param.l = 0;
- param.t = 0;
- while (obj) {
- param.l += obj.offsetLeft;
- param.t += obj.offsetTop;
- obj = obj.offsetParent;
- }
- return param;
- }
- /*Calculation parametrs (width and height) of the visible area banner*/
- function afCalculationParam(posObj, sizeObj, sizeWin, scroll) {
- var param = 0;
- if (posObj >= scroll) {
- if (posObj >= (scroll + sizeWin) ) {
- return param;
- } else if (posObj < (scroll + sizeWin) ) {
- if ( (posObj + sizeObj) <= (scroll + sizeWin) ) {
- return param = sizeObj;
- } else if ( (posObj + sizeObj) > (scroll+sizeWin) ) {
- return param = scroll + sizeWin - posObj;
- }
- }
- } else if (posObj < scroll) {
- if ( (posObj + sizeObj) > scroll) {
- if ( (posObj + sizeObj) > (scroll + sizeWin) ) {
- return param = sizeWin;
- } else if ( (posObj + sizeObj) <= (scroll + sizeWin) ) {
- return param = posObj + sizeObj - scroll;
- }
- } else if ( (posObj + sizeObj) <= scroll) {
- return param;
- }
- }
- }
- /*Calculation of the visible area banner*/
- function afCalculationAreaBanner(obj) {
- var w = 0, //Width of the visible area banner
- h = 0, //Height of the visible area banner
- paramWindow = afParametersWindow(),
- cw = paramWindow.cw,
- ch = paramWindow.ch,
- sl = paramWindow.sl,
- st = paramWindow.st,
- paramObj = afParametersObject(obj),
- ow = paramObj.w,
- oh = paramObj.h,
- ol = paramObj.l,
- ot = paramObj.t,
- s = {}; //Area banner
- s.smax = ow*oh; //Maximum area banner
- s.svis = 0; //Visible area banner
- s.spct = 0; //Area banner as a percentage
- w = afCalculationParam(ol, ow, cw, sl); //Calculation width (w) of the visible area banner
- h = afCalculationParam(ot, oh, ch, st); //Calculation height (h) of the visible area banner
- s.svis = w*h;
- s.spct = (s.svis * 100) / s.smax;
- return s;
- }
- var afFlagFocus = true;
- parent.onfocus = new Function("afFlagFocus = true;");
- parent.document.onactivate = parent.onfocus; //for IE
- parent.document.body.onmouseover = new Function("afFlagFocus = true;");
- parent.onblur = new Function("afFlagFocus = false;");
- var afEvent%bannerID% = new Image();
- function afCountSeconds%bannerID%() {
- var obj = parent.document.getElementById('AdFox_banner_%random1%');
- if (obj) {
- var s = afCalculationAreaBanner(obj);
- var spct = Math.ceil(s.spct);
- if (afFlagFocus) {
- if (spct >= 1) {
- afEvent%bannerID%.src = '%event1%'; //1 event
- if (spct == 100) {
- afEvent%bannerID%.src = '%event2%'; //2 event
- }
- }
- }
- setTimeout(function() {afCountSeconds%bannerID%();}, 1000);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement