Всем доброго времени суток.
Возникла такая проблема в написании гаджета под Win 7, парсю страницу XML, которая лежит локально в папке с гаджетом:
<?xml version="1.0" encoding="utf-8"?>
<MMWEATHER>
<REPORT type="frc3">
<TOWN index="34929" sname="%CA%F0%E0%F1%ED%EE%E4%E0%F0" latitude="45" longitude="38">
<FORECAST day="24" month="05" year="2013" hour="04" tod="0" predict="0" weekday="6">
<PHENOMENA cloudiness="0" precipitation="10" rpower="0" spower="0"/>
<PRESSURE max="756" min="754"/>
<TEMPERATURE max="20" min="18"/>
<WIND min="1" max="3" direction="3"/>
<RELWET max="72" min="70"/>
<HEAT min="18" max="20"/>
</FORECAST>
<FORECAST day="24" month="05" year="2013" hour="10" tod="1" predict="0" weekday="6">
<PHENOMENA cloudiness="0" precipitation="10" rpower="0" spower="0"/>
<PRESSURE max="756" min="754"/>
<TEMPERATURE max="28" min="26"/>
<WIND min="2" max="4" direction="2"/>
<RELWET max="58" min="56"/>
<HEAT min="25" max="27"/>
</FORECAST>
<FORECAST day="24" month="05" year="2013" hour="16" tod="2" predict="0" weekday="6">
<PHENOMENA cloudiness="0" precipitation="10" rpower="0" spower="0"/>
<PRESSURE max="753" min="751"/>
<TEMPERATURE max="37" min="35"/>
<WIND min="2" max="4" direction="4"/>
<RELWET max="29" min="27"/>
<HEAT min="32" max="34"/>
</FORECAST>
<FORECAST day="24" month="05" year="2013" hour="22" tod="3" predict="0" weekday="6">
<PHENOMENA cloudiness="2" precipitation="10" rpower="0" spower="0"/>
<PRESSURE max="755" min="753"/>
<TEMPERATURE max="27" min="25"/>
<WIND min="4" max="6" direction="4"/>
<RELWET max="57" min="55"/>
<HEAT min="24" max="26"/>
</FORECAST>
</TOWN>
</REPORT>
</MMWEATHER>
Выдергиваю с него информацию через jQuery:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Пример парсинга погоды</title>
<script type="text/javascript" src="jquery.js"></script>
<style>
body {width: 300px;height: 300px; }
</style>
<script language=javascript>
$(document).ready(function () {
$.ajax({
type: "GET",
url: "weather.xml",
dataType: "xml",
success: xmlParser
});
});
function xmlParser(xml) {
////////////////////////////////////////////////// Читаем аттрибуты TOWN для этого ищем REPORT (вышестоящий)
/* $(xml).find("REPORT").each(function () {
$(".main").append( 'Krasnodar-----'//вывод в блок с классом main (см.ниже)
+ $(this).find("TOWN").attr('sname') +'-'+ $(this).find("TOWN").attr('latitude') +'-'+ $(this).find("TOWN").attr('longitude')+ '<br>'
);
});
*/
////////////////////////////////////////////////// Читаем аттрибуты FORECAST для этого ищем TOWN (вышестоящий)
$(xml).find("TOWN").each(function () {
$(".main").append( 'Krasnodar' +'<br>'+'Date: '+//вывод в блок с классом main (см.ниже)
+ $(this).find("FORECAST").attr('day') +'-'+ $(this).find("FORECAST").attr('month') +'-'+ $(this).find("FORECAST").attr('year') +'<br>'+'-------------'+'<br>'
);
});
////////////////////////////////////////////////// Читаем аттрибуты TEMPERATURE для этого ищем FORECAST (вышестоящий)
$(xml).find("FORECAST").each(function () {
$(".main").append( 'Temperature' +'<br>'+'max: '+//вывод в блок с классом main (см.ниже)
+ $(this).find("TEMPERATURE").attr('max') +'<br>'+ 'min:'+$(this).find("TEMPERATURE").attr('min') +'<br><br>'
);
});
}
</script>
</head>
<body>
TEST
<div class="main"></div>
</body>
</html>
Затем вывожу все это в блок DIV класса main.
Проблема заключается в том, что при выводе информации в браузере все отлично работает, парсится и выводится. Но есть одно но в IE приходится разрешать выполнение сценариев и ActiveX при открытие страницы. Это ведь не должно быть связано с гаджетом?
При выводе в гаджете не отображается информация парсинга, DIV не отображается. Что не так делаю? Скрипт как я понимаю не срабатывает совсем. Возможны ли проблемы с ActiveX? Но насколько мне известно, гаджеты исполняются локально, поэтому должно быть все открыто. Кто подскажет, почему информация не выводится в блоке DIV ?