Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.07.2008, 19:46
Интересующийся
Отправить личное сообщение для Воитель Посмотреть профиль Найти все сообщения от Воитель
 
Регистрация: 24.06.2008
Сообщений: 26

is not a function
Вообщем, печатаю такую вещь:
Определяются координаты мышки, происходят некоторые вычисления и судя по ним отправляется во флэш определённая переменая

Вот код в котором FireFox выкидывает ошибку
getFlashMovieObject("movie").SetVariable is not a function
getCoords()%D0%BA%D0%BE%D0%B... (line 18)
getFlashMovieObject('movie').SetVariable('/:ANY_MENU1', '1');

Код:
 
<html> 
<head> 
<title>Координаты курсора над слоем, расставляем точки</title> 

<style type="text/css"> 
<!-- 

--> 
</style> 


<script type="text/javascript"> 
<!-- 
    function getCoords() {    // вызывается при перемещении курсора над слоем с картой 
        document.onmousemove = moveDot;   //запускается определение координат курсора  
                                          //при поподании курсора на саму страницу сайта         
        myForm.chtoto.value = moykoorsloyay; 
        getFlashMovieObject('movie').SetVariable('/:ANY_MENU1', '1');     
    } 
     
    function getFlashMovieObject(movieName) 
{ if (window.document[movieName])  
 { 
     return window.document[movieName]; 
 } 
 if (navigator.appName.indexOf("Microsoft Internet")==-1) 
 { 
   if (document.embeds && document.embeds[movieName]) 
     return document.embeds[movieName];  
 } 
 else // if (navigator.appName.indexOf("Microsoft Internet")!=-1) 
 { 
   return document.getElementById(movieName); 
 } } 

    function moveDot(cursor) {// функция перемещения точки над слоем с картой 
        if(!cursor) var cursor = window.event; 
        myForm.coordX.value = ''; 
        myForm.coordY.value = ''; 
        var x = 0; 
        var y = 0; 
        if (cursor.pageX || cursor.pageY) { 
            x = cursor.pageX; 
            y = cursor.pageY; 
        } 
        else if (cursor.clientX || cursor.clientY) { 
            x = cursor.clientX + document.body.scrollLeft; 
            y = cursor.clientY + document.body.scrollTop; 
        } 
         
        myForm.coordX.value = x; 
        myForm.coordY.value = y; 
         
         
    } 
    function getObj(name) { 
    // функция захвата объекта, используется при инициализации 
        if (document.getElementById) return document.getElementById(name); 
        else if (document.all) return document.all[name]; 
        else if (document.layers) return document.layers[name]; 
        else return false; 
    } 
     
function init() { // инициализация 
    // форма 
    myForm = getObj('mapForm'); 
    // слой с картой 
    imageMap = getObj('schemePlace'); 
    document.onmouseover = getCoords; 
    mapWdt = imageMap.offsetWidth;       //определение расмеров слоя 
    mapHgt = imageMap.offsetHeight; 
    moykoorsloyax = imageMap.offsetLeft; //определение координат слоя 
    moykoorsloyay = imageMap.offsetTop; 
} 


// ожидание загрузки страницы 
// и вызов функции инициализации 
try { 
    window.addEventListener('load', init, false); 
} catch(e) { 
    window.onload = init; 
} 
     
     
//-->     
</script> 
</head> 
<body> 
<div style="font-size:1.2em;"> 
  <h2>Координаты курсора над слоем, расставляем точки</h2> 


  <form method="get" id="mapForm" action=""> 
        <label for="coordX">X: </label><input type="text" name="coordX" id="coordX" /><br /> 
        <label for="coordY">Y: </label><input type="text" name="coordY" id="coordY" /><br /> 
        <p>что-то 
          <input name="textfield" type="text" id="chtoto"/> 
</p> 
  </form> 
<p>&nbsp;</p> 
</div> 
<div id="schemePlace" style="position:absolute; left:250px; top:50px; width:400px; height:226px; border: 1px none #000000; z-index: 1; background-color: #CCCCCC; layer-background-color: #CCCCCC;"> 
        <object id="movie" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="158" height="400"> 
        <param name="allowScriptAccess" value="sameDomain" /> 
        <param name="movie" value="odnamenu3.swf" /> 
        <param name="quality" value="high" /> 
        <param name="wmode" value="transparent"/> 
        <embed src="odnamenu3.swf" quality="high" wmode="transparent" allowScriptAccess="sameDomain" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="158" height="400"></embed> 
  </object> 
</div> 
</body> 
</html>

Самое обидное в этой ситуации что я уже делал подобную вещь.
Код:
 
<div id="move" style="position:absolute; left:50px; top:865px; width:100px; height: 100; z-index:10;"> 
  <object id="movie" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="100" height="100" align="middle"> 
<param name="allowScriptAccess" value="sameDomain" /> 
<param name="movie" value="babochka.swf" /> 
<param name="FlashVars" value="maxkoor= 1015 "> 
<param name="quality" value="high" /> 
<param name="wmode" value="transparent"/> 
<embed src="babochka.swf" name="movie" quality="high" wmode="transparent" FlashVars="maxkoor=1015" width="100" height="100" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> 
</object> 
</div> 
<div id="partnerka" style="top: 859px;"><a href="http://www.wmtlt.ru/shop/go.aspx?p=158">Интернет магазин Тольятти  </a></div> 
<script language="JavaScript">  
<!--  
  var gjapox=50; 
  var gjapoy=865 ; 
  var tekkoorx=0; 
  var tekkoory=0; 
  var nachkoorx=50; 
  var nachkoory=865 ; 
  var konkoorx=0; 
  var konkoory=0; 
  var prirashiepox; 
  var prirashiepoy; 
  var indifikator=null; 
  var tekst; 
  var podtekkoorx; 
  var podtekkoory; 
  function japapilon(japox, japoy) { 
          tekkoorx=nachkoorx; 
        tekkoory=nachkoory; 
        //gjapox=japox*1; 
          //gjapoy=japoy*1; 
         
        //konkoorx=nachkoorx+gjapox; 
        //konkoory=nachkoory+gjapoy; 
        konkoorx=japox*1-50; 
        konkoory=japoy*1-50; 
        gjapox=konkoorx-nachkoorx; 
        gjapoy=konkoory-nachkoory; 
        tekst=" gjpo:"+gjapox+" "+gjapoy; 
        if (gjapox<0) { prirashiepox=gjapox*(-1); } else { prirashiepox=gjapox; } 
        if (gjapoy<0) { prirashiepoy=gjapoy*(-1); } else { prirashiepoy=gjapoy; } 
        //document.getElementById('bibon').value = gjapox+" "+gjapoy; 
        polet() } 
         

        function polet() { 
        if (prirashiepox <= prirashiepoy && prirashiepox!=0) { if (tekkoory!=konkoory) { 
        if (gjapoy<0) { tekkoory-=1; } 
        if (gjapoy>0) { tekkoory+=1; } 
        tekkoorx=(tekkoory-nachkoory)*(gjapox/gjapoy); 
        tekkoorx=nachkoorx+Math.round(tekkoorx); 
        dvijsloia() 
        indifikator=setTimeout(arguments.callee, 1); 
        } 
        else { 
        esli('movie') 
        nachkoorx=konkoorx; 
        nachkoory=konkoory; 
        }} 
         
        if (prirashiepox > prirashiepoy && prirashiepoy!=0) { if (tekkoorx!=konkoorx) { 
        if (gjapox<0) { tekkoorx-=1; } 
        if (gjapox>0) { tekkoorx+=1; } 
        tekkoory=(tekkoorx-nachkoorx)*(gjapoy/gjapox); 
        tekkoory=nachkoory+Math.round(tekkoory);  
        dvijsloia() 
        indifikator=setTimeout(arguments.callee, 1); 
        } 
        else { 
        esli('movie') 
        nachkoorx=konkoorx; 
        nachkoory=konkoory; 
        }} 
        if (prirashiepox==0) { if (tekkoory!=konkoory) { if (tekkoory > konkoory) { tekkoory-=1; } 
                                                         if (tekkoory < konkoory) { tekkoory+=1; } 
                                                         dvijsloia() 
                                                         indifikator=setTimeout(arguments.callee, 1);} else { esli('movie') }}  
        if (prirashiepoy==0) { if (tekkoorx!=konkoorx) { if (tekkoorx > konkoorx) { tekkoorx-=1; } 
                                                         if (tekkoorx < konkoorx) { tekkoorx+=1; } 
                                                         dvijsloia() 
                                                         indifikator=setTimeout(arguments.callee, 1);} else { esli('movie') }}  
        document.getElementById('bibon').value = nachkoorx+" "+nachkoory+"/"+konkoorx+" "+konkoory+tekst; 
    } 
     
     
     function dvijsloia()        { 
        if (navigator.appName == "Netscape")  
{ document.move.left = tekkoorx +'px' 
  document.move.top = tekkoory +'px' }  
else { document.all.move.style.left= tekkoorx +'px' 
       document.all.move.style.top = tekkoory +'px' } } 
        
        
       function getFlashMovieObject(movieName) 
{ 
 if (window.document[movieName])  
 { 
     return window.document[movieName]; 
 } 
 if (navigator.appName.indexOf("Microsoft Internet")==-1) 
 { 
   if (document.embeds && document.embeds[movieName]) 
     return document.embeds[movieName];  
 } 
 else // if (navigator.appName.indexOf("Microsoft Internet")!=-1) 
 { 
   return document.getElementById(movieName); 
 } 
} 


        function esli(movie) { 
        getFlashMovieObject('movie').SetVariable('/:ANY_VAR', 'Заработало :)'); 
        clearTimeout(indifikator); 
        indifikator=null;  
        } 
-->  
</script>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расшифровка кода, генерируемого flash. ГостьФорума Общие вопросы Javascript 6 02.02.2011 01:26
скрипт калькулятора krIvo jQuery 0 25.09.2008 18:44
помогите с меню Ribt Общие вопросы Javascript 0 20.09.2008 08:11
Фиксирование zIndex-ом динамических окон Макс Элементы интерфейса 11 16.08.2008 21:59
проблема с ООП scuter Общие вопросы Javascript 19 23.03.2008 22:48