function makeRequest(url, targetDiv) { var httpRequest; if (window.XMLHttpRequest) { // Mozilla, Safari, ... httpRequest = new XMLHttpRequest(); if (httpRequest.overrideMimeType) { httpRequest.overrideMimeType('text/xml'); // See note below about this line } } else if (window.ActiveXObject) { // IE try { httpRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!httpRequest) { alert('Giving up :( Cannot create an XMLHTTP instance'); return false; } httpRequest.onreadystatechange = function() { if(targetDiv == "undefined" || targetDiv == null) alertContents(httpRequest); else { assignContents(httpRequest, targetDiv); } }; httpRequest.open('GET', url, true); httpRequest.send(''); } function alertContents(httpRequest) { if (httpRequest.readyState == 4) { if (httpRequest.status == 200) { alert(httpRequest.responseText); } else { alert("There was a problem with the request."); } } } function restoreOpac() { $('container').style.opacity = "1"; $('footer').style.opacity = "1"; } function assignContents(httpRequest, targetDiv) { if (httpRequest.readyState == 4) { //$('container').style.opacity = ".25"; //$('footer').style.opacity = ".25"; scroll = getScrollXY(); // elem = document.getElementById(targetDiv); if (httpRequest.status == 200) { element = Builder.node('div',{classname:'ajax_target', id:targetDiv}); element.innerHTML = httpRequest.responseText; WIDTH = 450; element.style.width = WIDTH; element.style.position = "absolute"; element.style.top = (scroll[1] + 50); element.style.left = (document.body.clientWidth / 2) - (WIDTH / 2); element.style.display = "none"; new Draggable(element); $("ajaxTargets").appendChild(element); Effect.Appear(targetDiv,{duration:.3}); } else { elem.innerHTML = "There was a problem with the request."; } } } function doAjaxAlert(contents) { makeRequest('http://www.losangeleschronicle.com/ajaxAlert/?ajax&contents=' + contents, 'alertDiv'); Effect.Fade('semi_transparent',{duration:.3}); } function getScrollXY() { var scrOfX = 0, scrOfY = 0; if( typeof( window.pageYOffset ) == 'number' ) { //Netscape compliant scrOfY = window.pageYOffset; scrOfX = window.pageXOffset; } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) { //DOM compliant scrOfY = document.body.scrollTop; scrOfX = document.body.scrollLeft; } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) { //IE6 standards compliant mode scrOfY = document.documentElement.scrollTop; scrOfX = document.documentElement.scrollLeft; } return [ scrOfX, scrOfY ]; }