Я пытаюсь визуализировать некоторый JavaScript в iframe. Javascript работает, когда я открываю его как часть моего сервера rails, т.е. я открываю его как часть каталога / public.
Однако происходит сбой, когда я открываю его как простой HTML-файл или как часть iframe. Мой код выглядит так:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><script src="http://www.google.com/adsense/search/ads.js" type="text/javascript"></script><script src="http://www.google.com/uds/api/ads/3.0/7945945e138d6d2d6c753e6353976ff6/search.IN.js" type="text/javascript"></script>
</head>
<body>
<div class = "test" id="afs_adblock_0" style="padding: 0px px; background-color: ; height: 600px; width: 600px;" onmouseover="out_pixel = '/rd/out_pixel?target_host_path=http%3A%2F%2Fadsense.google.com&pvid=7192&msid=5&fpos=0&bpos=0&bid=afs_adblock_0&twiz_val=0&durl=&rq=350&feed_id=0&ex=1326646029&cs=dca4b10de177c97d609359425b227904';"></div>
</body>
<script type="text/javascript" charset="utf-8">
var pageOptions = {
'pubId' : 'pub-8639021338656306',
'query' : 'college',
'channel' : '5150635874'
};
var afs_adblock_0 = {
'container' : 'afs_adblock_0',
'minTop' : '1x',
'fontFamily' : 'arial',
'fontSizeTitle' : '14px',
'fontSizeDescription' : '12px',
'fontSizeDomainLink' : '12px',
'colorTitleLink' : '#0067B1',
'colorText' : 'blue',
'colorDomainLink' : 'green',
'colorBackground' : '#D5E9F2',
'titleBold' : true,
'verticalSpacing' : 6,
'rightHandAttribution' : true,
'colorAdSeparator' : 'white',
'height' : '500px',
'width' : '300px',
'siteLinks' : true,
'adLoadedCallback' : function(containerName, adsLoaded) {if(!adsLoaded){document.getElementById(containerName).style.display = 'none';}; track_afs_results('7192', containerName, adsLoaded, '1092dd58f07de305cb14c3a2661fe150');}};
document.getElementById('afs_adblock_0').style.padding='0px 20px';document.getElementById('afs_adblock_0').style.background='#D5E9F2';new google.ads.search.Ads(pageOptions, afs_adblock_0);
var out_pixel = '/rd/out_pixel'
var isOverIFrame = false;
function processMouseOut() {
isOverIFrame = false;
top.focus();
}
function processMouseOver() { isOverIFrame = true;}
function processIFrameClick() {
if(isOverIFrame) {
var xmlHttp = null;
xmlHttp = new XMLHttpRequest();
xmlHttp.open('GET', out_pixel, false);
xmlHttp.send(null);
}
}
function init() {
b = document.getElementsByTagName("body")[0];
if(/MSIE/.test(navigator.userAgent)){
b.onunload = function() { processIFrameClick() };
}
else{
b.setAttribute('onunload', 'javascript: processIFrameClick()');
}
var element = document.getElementsByTagName("iframe");
for (var i=0; i<element.length; i++) {
element[i].onmouseover = processMouseOver;
element[i].onmouseout = processMouseOut;
}
}
setTimeout("init();",800);
</script>
<script src="http://www.google.com/uds/api/ads/3.0/7945945e138d6d2d6c753e6353976ff6/search.IN.js" type="text/javascript"></script>
Что здесь происходит, я собираюсь вырвать мои волосы !! В чем может быть разница между открытием файла в iframe и открытием его через сервер rails.