// Vereinfacht die Übergabe von Parametern an html-Seiten, z.B.: // // Aufruf: www.bla.de/test.html?test=1&x=2&y=3 // // Im Javascriptblock in test.html: // var params=getJsParams(window.location.search); // // params sieht dann so aus: // params[0]["test"] hat den Wert 1 // params[0]["x"] hat den Wert 2 // params[0]["y"] hat den Wert 3 // // Wurden keine Werte an die Seite übergeben, ist params ein String mit // dem Inhalt "noparams". function getJsParams(search) { var JsParams="noparams"; if (search.match(/\?/)) { JsParams=new Array(); search = search.slice(1); if (search.match(/(&|=|$)/)) { JsParams[0]=new Array(); var p1=new Array(); p1=search.split(/&/); for (var i=0; i < p1.length; ++i) { var p2=new Array(); p2=p1[i].split(/=/); eval("JsParams[0]['"+p2[0]+"']='"+p2[1]+"';"); } } } return JsParams; } // Baut einen Bildnamen zusammen und lädt diesen, um in der // Webstatistik Aussagen über Ladezeiten zu geben. Verwendet Intervalle // in 200-ms-Schritten. // Um z.B. die Onload-Zeit messen zu können, muss die verwendende Seite // ganz oben stehen haben: // // Dies ermittelt die Millisekunden seit 1970 als Startzeit. // Im onload-Tag der Seite muss dann stehen: // z.B. monitor('http://www.automobile.de','onload','bilder'); function monitor(domain,typ,bereich,start_alternativ) { var ms_ende=new Date().getTime(); var ms_diff; if (start_alternativ) { ms_diff=ms_ende-start_alternativ; } else { ms_diff=ms_ende-ms_start; } var intervall; // if (ms_diff<400) { intervall="0-400"; } else if (ms_diff<800) { intervall="400-800"; } else if (ms_diff<1200) { intervall="800-1200"; } else if (ms_diff<1600) { intervall="1200-1600"; } else if (ms_diff<2000) { intervall="1600-2000"; } else if (ms_diff<2200) { intervall="2000-2200"; } else if (ms_diff<2400) { intervall="2200-2400"; } else if (ms_diff<2600) { intervall="2400-2600"; } else if (ms_diff<2800) { intervall="2600-2800"; } else if (ms_diff<3000) { intervall="2800-3000"; } else if (ms_diff<3200) { intervall="3000-3200"; } else if (ms_diff<3400) { intervall="3200-3400"; } else if (ms_diff<3600) { intervall="3400-3600"; } else if (ms_diff<3800) { intervall="3600-3800"; } else if (ms_diff<4000) { intervall="3800-4000"; } else if (ms_diff<5000) { intervall="4000-5000"; } else if (ms_diff<6000) { intervall="5000-6000"; } else if (ms_diff<7000) { intervall="6000-7000"; } else if (ms_diff<8000) { intervall="7000-8000"; } else if (ms_diff<9000) { intervall="8000-9000"; } else if (ms_diff<10000) { intervall="9000-10000"; } else { intervall="10000-max"; } // // z.B. http://www.automobile.de/monitor/onload/bilder/2000-max.gif new Image().src=domain+"/monitor/"+typ+"/"+bereich+"/"+intervall+".gif?"+ms_start+"-"+ms_ende+"-"+ms_diff; } // if (ms_diff<200) { // intervall="0-200"; // } // else if (ms_diff<400) { // intervall="200-400"; // } // else if (ms_diff<600) { // intervall="400-600"; // } // else if (ms_diff<800) { // intervall="600-800"; // } // else if (ms_diff<1000) { // intervall="800-1000"; // } // else if (ms_diff<1200) { // intervall="1000-1200"; // } // else if (ms_diff<1400) { // intervall="1200-1400"; // } // else if (ms_diff<1600) { // intervall="1400-1600"; // } // else if (ms_diff<1800) { // intervall="1600-1800"; // } // else if (ms_diff<2000) { // intervall="1800-2000"; // } // else { // intervall="2000-max"; // } // Frameset nachladen, wenn ohne Frameset aufgerufen function checkFrameset(dl,append) { if (window.self==window.top) { if (!dl) dl="/cgi-bin/deeplink.pl"; var url=window.location.href; var deeplink=url.replace(/^(http:\/\/[^\/]+)/,"$1"+dl); //alert(deeplink); if (append) deeplink+=append; window.top.location.href=deeplink; } } // Diese Funktion blendet einen Bereich in Abhängigkeit der // vom Bannermodul gesetzten Variablen img_imago_de_ ein // und ist sinnvoll, falls unser JS-Tag über einen externen Adserver // ausgeliefert wird oder der Bannerplatz von Style/HTML-Angaben umschlossen // ist, die ebenfalls nur bei vorhandener Kampagne angezeigt werden sollen. // // in der HTML-Seite: // // im Content: // // // Über elementid kann was anderes als "bannerplatz" gesetzt werden. // function displayBanner(wid,elementid) { if (wid) { if (!elementid) elementid="bannerplatz"; eval("var type_of = typeof(img_imago_de_"+wid+")"); // alert(wid); // alert(elementid); // alert(type_of); // type_of kann 3 Werte annehmen: // "undefined": Die Variable wurde gar nicht erst gesetzt. // Dies ist der Fall, falls unser Tag über einen externen Adserver // ausgeliefert wird, dieser jedoch eine EXTERNE Kampagne einblendet, // unser Tag also gar nicht erst verwendet. Dann soll der Bannerplatz // natürlich ebenfalls eingeblendet werden. // "object": Die Varbiable wurde über unsern Bannerserver mit "null" initialisiert, // d.h. es wurde keine Kampagne eingeblendet. Der Bannerplatz soll also nicht erscheinen. // "number": Es wurde eine Kampagne gefunden. img_imago_de_ enthält die Kampagnen-ID. if ( (type_of == "undefined" || type_of == "number") && document.getElementById && document.getElementById(elementid) ) { document.getElementById(elementid).style.display = "block"; } } } // Dasselbe wie displayBanner(), bloß umgekehrt. // Der Banner wird nur ausgeblendet, wenn explizit KEINE Kampagne von // UNSEREM Bannerserver gefunden wurde. (type_of ist dann "object" wegen img_imago_de_=null) function hideBanner(wid,elementid) { if (wid) { if (!elementid) elementid="bannerplatz"; eval("var type_of = typeof(img_imago_de_"+wid+")"); // alert(wid); // alert(elementid); // alert(type_of); if ( type_of == "object" && document.getElementById && document.getElementById(elementid) ) { document.getElementById(elementid).style.display = "none"; } } } // Passt einen iframe an die Höhe des anzuzeigenden Inhalts an. // Muss im onload-Tag des iframes aufgerufen werden, der angepasst werden soll: //