PDA

Просмотр полной версии : не работает fscommand (при локальном просмотре HTML документа)


sinet
31.05.2006, 20:52
Уважаемые, подскажите если знаете.

Почему может не работать fscommand при загрузке HTML документ локально с диска(HDD)? Если разместить этот же HTML документ и SWF на web server(и загружать с сервера) все работает на ура.

"http://www.anywebserver.ru/test_fscommand.html" работает
"C:\test_fscommand.html" не работает

iNils
31.05.2006, 20:58
А что в команде написано?

sinet
31.05.2006, 21:12
Все абсолютно стандартно(как в справке флеша):

во флеше по кнопке вызов fscommand:
on(press){
fscommand("messagebox", "This is a message box called from within Flash.");
}

в HTML все стандартно (генерится при публикации "Flash with FSCommand").

iNils
31.05.2006, 21:20
А у меня работает.
Покажи исходник swf и html.

sinet
31.05.2006, 21:38
<HTML>
<HEAD>
<meta http-equiv=Content-Type content="text/html; charset=">
<TITLE>dve_test</TITLE>


</HEAD>
<BODY bgcolor="#FFFFFF">
<SCRIPT LANGUAGE=JavaScript>
<!--
var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Handle all the the FSCommand messages in a Flash movie
function dve_test_DoFSCommand(command, args) {
var dve_testObj = InternetExplorer ? dve_test : document.dve_test;
//
// Place your code here...
alert("GOOD");
//
}

function m_obj(){
if (navigator.appName.indexOf ("Microsoft") !=-1){
return window["dve_test"]
}else{
return document["dve_test"]
}
}


function ttt(args) {
//alert(args);
var xxx=args;
m_obj().SetVariable("_root.ca1", xxx);
m_obj().SetVariable("_root.x_in", xxx);
}

// Hook for Internet Explorer
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 &&
navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
document.write('<SCRIPT LANGUAGE=VBScript\> \n');
document.write('on error resume next \n');
document.write('Sub dve_test_FSCommand(ByVal command, ByVal args)\n');
document.write(' call dve_test_DoFSCommand(command, args)\n');
document.write('end sub\n');
document.write('</SCRIPT\> \n');
}
//-->
</SCRIPT>

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
ID="dve_test" WIDTH="550" HEIGHT="400" ALIGN="">
<PARAM NAME=movie VALUE="dve_test.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=bgcolor VALUE=#CCFFFF> <EMBED src="dve_test.swf" quality=high bgcolor=#FFFFFF WIDTH="550" HEIGHT="400" swLiveConnect=true ID="dve_test" NAME="dve_test" ALIGN=""
TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED>
</OBJECT>
</BODY>
</HTML>

iNils
31.05.2006, 21:41
Впредь советую в обязательном порядке весь код заключать в теги.
А swf где?

sinet
31.05.2006, 21:42
Вот тут все

iNils
31.05.2006, 21:45
Работает :)

sinet
31.05.2006, 21:50
Что то тут не так.
Я проверял на разных компах "C:\dve_test.html" не работает.
Смотрю браузером IE 6.0.2800.1106 SP1.

-=GRAF=-
31.05.2006, 22:04
СМОТРИ ТЕМУ НИЖЕ!
("В IE не работает getURL();") Автор: BABU ;
Должно помочь...

sinet
31.05.2006, 22:21
СМОТРИ ТЕМУ НИЖЕ!
("В IE не работает getURL();") Автор: BABU ;
Должно помочь...

Не помогло :(
Я проверял на 3 компах. Маловероятно чтобы все компы глючили. Дело в чем то другом.

Локально в IE не работает.
В Netscape например работает. А надо мне что бы локально в IE работало

-=GRAF=-
01.06.2006, 00:14
Ты попробуй локально в MyIE... или другие браузера используй...

sinet
01.06.2006, 13:04
Нужно разбить вопрос на два:
Работает fscommand в IE локально или нет?
Если не работает то как с этим бороться?

Лет 5 назад я уже сталкивался с этой особенностью IE.
Неужели за 5 лет никто не разобрался в этом вопросе.

Я конечно понимаю что можно организовать общение между swf и JavaScript по другому(например с помощью Flash / JavaScript Integration Kit (http://weblogs.macromedia.com/flashjavascript/)) но хотелось бы понять что это за ограничение такое.

albu2
02.06.2006, 22:15
хотелось бы понять что это за ограничение такое.

Это связано с восьмым плэером. В Макромедии сделали специально такой геморрой, чтобы все мучались. Попробуй надстройку для IE Maxthon - там локально всё работает.

Вот, почитай для развития:
http://adobe.com/devnet/flash/articles/fplayer8_security_03.html

Очень они нехорошие люди.