Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   Не срабатывает скрипт в Windows sidebar (https://javascript.ru/forum/css-html-internet-explorer/38343-ne-srabatyvaet-skript-v-windows-sidebar.html)

includer-test 28.05.2013 20:04

Не срабатывает скрипт в Windows sidebar
 
Всем доброго времени суток.
Возникла такая проблема в написании гаджета под 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 ?

includer-test 29.05.2013 11:32

Кому интересно, то я использовал .hta для отображения гаджета, вместо .html, все работает.


Часовой пояс GMT +3, время: 08:58.