Подскажите, плз, можно ли как-нибудь на JavaScript загрузить какую-нибудь страницу (не свою! и не на своем сервере!) в переменную и потом проделать над ней какие-либо действия.
для начала, можно чтоб работала следующая конструкция:
var d = document.open("get", "http://www.shender.ru/syrok/print/");
alert(d.outerText);
код
var d = document.open("get", "http://www.shender.ru/syrok/print/");
как раз должен быть исправлен (ибо эта конструкция не работает)
независимость от браузера не важна, использование XMLHttpRequest тоже пойдет...
в результате нужно отобразить обработанную страницу...
Здравствуйте, LAndrew, Вы писали:
LA>Подскажите, плз, можно ли как-нибудь на JavaScript загрузить какую-нибудь страницу (не свою! и не на своем сервере!) в переменную и потом проделать над ней какие-либо действия.
LA>для начала, можно чтоб работала следующая конструкция:
LA>LA>var d = document.open("get", "http://www.shender.ru/syrok/print/");
LA>alert(d.outerText);
LA>
LA>код
LA>LA>var d = document.open("get", "http://www.shender.ru/syrok/print/");
LA>
LA>как раз должен быть исправлен (ибо эта конструкция не работает)
LA>независимость от браузера не важна, использование XMLHttpRequest тоже пойдет...
LA>в результате нужно отобразить обработанную страницу...
Согласно политики безопасности браузера подобная конструкция работать не будет! Кроме случая когда JavaScript выполняется в рамках HTML Application. Вы также не сможете прочесть содержимое фреймов если они открыты из других доменов. Но решение как всегда простое — сделайте простую прокси, тогда ваш код будет выглядеть, например так:
var d = document.open('get', 'proxy.php?http://www.shender.ru/syrok/print/');
тут proxy.php — это ваша прокси на вашем сервере, приблизительно с таким кодом:
<?php
// тут обязательно надо проверять чего мы читаем и для кого
readfile($_SERVER['QUERY_STRING']);
?>
а метод open можно реализовать с помощью AJAX, например так:
document.open = function (_strMethod, _strUrl, _strRequest)
{
var objTransport = false;
if (window.XMLHttpRequest)
{
// Mozilla, Safari,...
objTransport = new XMLHttpRequest();
if (objTransport.overrideMimeType)
{
objTransport.overrideMimeType("text/xml");
}
}
else if (window.ActiveXObject)
{
// IE
try
{
objTransport = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
objTransport = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
return false;
}
}
}
if (objTransport)
{
try
{
if (_bolJustSend == null)
{
_bolJustSend = false;
}
objTransport.open(_strMethod, _strUrl, false);
objTransport.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
objTransport.send(_strRequest);
}
catch (e) {}
return objTransport.responseText;
}
return false;
}
Здравствуйте, LAndrew, Вы писали:
LA>а что в данном случае подразумевается под HTML Application?
http://msdn.microsoft.com/workshop/author/hta/overview/htaoverview.asp
LAndrew wrote:
> а что в данном случае подразумевается под HTML Application?
Гугл отменили?
http://www.google.ru/search?q=html+applicationPosted via RSDN NNTP Server 2.0