Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 28.04.2009, 11:04
satrix_vip вне форума Посмотреть профиль Отправить личное сообщение для satrix_vip Найти все сообщения от satrix_vip
  № 1  
Ответить с цитированием
satrix_vip

Регистрация: Apr 2009
Сообщений: 18
Question Вызов функции во флеше и передача переменных из JS

Привет всем!
Помогите пожаулуйста вот с токой проблемой.
Нужно чтобы где onclick="movie('external').ext(200,400)" вместо 200,400 передавались координаты курсора, и происходило это не при нажатии кнопки а постоянно!
Ответьте если кто знает!
Благодарю за проявленный интерес!

Код:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="external" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="external.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="external.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="external" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
<input type="button"  onclick="movie('external').ext(200,400)" value="Call ExternalInterface" />
</body>
<script type="text/javascript">
	function movie(name) 
{
		var isIE = navigator.appName.indexOf("Microsoft") != -1;
		return isIE ? window[name] : document[name];
}
</script>


Последний раз редактировалось satrix_vip; 28.04.2009 в 14:09.
Старый 28.04.2009, 19:13
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 2  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Сделайте из флешки вызов метода js, в котором возвратите координаты курсора обратно флешу. Вызывайте это метод так часто, как необходимо (setInterval или onEnterFrame).
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.04.2009, 09:26
satrix_vip вне форума Посмотреть профиль Отправить личное сообщение для satrix_vip Найти все сообщения от satrix_vip
  № 3  
Ответить с цитированием
satrix_vip

Регистрация: Apr 2009
Сообщений: 18
Спасибо за помощь!
А как из флеша вызвать функцию JS
если можно примерчик!!

Старый 29.04.2009, 11:28
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Класс ExternalInterface. Пример в хелпе.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.04.2009, 11:59
satrix_vip вне форума Посмотреть профиль Отправить личное сообщение для satrix_vip Найти все сообщения от satrix_vip
  № 5  
Ответить с цитированием
satrix_vip

Регистрация: Apr 2009
Сообщений: 18
я написал вот так
AS
Код:
import flash.external.ExternalInterface;
var xx = ExternalInterface.call("GetCoordsx");
и
JS
Код:
function GetCoordsx()
{
x=e.pageX;
return (X)
}
но ничего не получается


Последний раз редактировалось satrix_vip; 29.04.2009 в 14:31.
Старый 29.04.2009, 14:37
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 6  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Исправьте, возможно из-за этого

было
x=e.pageX;
return (X)

нужно

x=e.pageX;
return x;
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 29.04.2009, 14:47
satrix_vip вне форума Посмотреть профиль Отправить личное сообщение для satrix_vip Найти все сообщения от satrix_vip
  № 7  
Ответить с цитированием
satrix_vip

Регистрация: Apr 2009
Сообщений: 18
помогите что не так
вот весь код на хтмл
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=koi8-r" />
<title>external</title>
</head>
<body onload=movie('external').ext(200)>
<!--url's used in the movie-->
<!--text used in the movie-->
<!-- saved from url=(0013)about:internet -->
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="550" height="400" id="external" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="external.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="external.swf" quality="high" bgcolor="#ffffff" width="550" height="400" name="external" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</body>
<script type="text/javascript">
	function movie(name) 
{
		var isIE = navigator.appName.indexOf("Microsoft") != -1;
		return isIE ? window[name] : document[name];
}
</script>

<script language="JavaScript">
<!--

function GetCoordsx()
{
x=e.pageX;
return x;
}
function GetCoordsy()
{
return (e.pageY);
}
// -->
</script>
<textarea id="text"></textarea>

</html>
и на AS
Код AS1/AS2:
import flash.external.ExternalInterface;
var xx = ExternalInterface.call("GetCoordsx");
 
_root.tt.text=xx;
 
followMouse = function () {
	this.startX = this._x;
	this.startY = this._y;
	this.onEnterFrame = animateEye;
};
animateEye = function () {
 
	var distX = (xx-this._x)/5 -30;
	var distY = (_ymouse-this._y)/5 -25;
	if (Math.abs(distX)<75) {
		this._x = this.startX+distX;
	}
	if (Math.abs(distY)<25) {
		this._y = this.startY+distY;
	}
};
leftEye_mc.onEnterFrame = followMouse;


Последний раз редактировалось satrix_vip; 29.04.2009 в 15:50.
Старый 29.04.2009, 18:34
BestDay вне форума Посмотреть профиль Отправить личное сообщение для BestDay Найти все сообщения от BestDay
  № 8  
Ответить с цитированием
BestDay
[+1.3 07.05.09]

Регистрация: Apr 2009
Сообщений: 10
Плохая мысль. Все проще. Перехватываем onmousemove в JS+HTML и передаем параметры в AS через вызов SetVariable.

Старый 30.04.2009, 10:48
satrix_vip вне форума Посмотреть профиль Отправить личное сообщение для satrix_vip Найти все сообщения от satrix_vip
  № 9  
Ответить с цитированием
satrix_vip

Регистрация: Apr 2009
Сообщений: 18
Цитата:
Сообщение от BestDay Посмотреть сообщение
Плохая мысль. Все проще. Перехватываем onmousemove в JS+HTML и передаем параметры в AS через вызов SetVariable.
спасибо за помощь!
а можно по подробнее!

Старый 30.04.2009, 11:50
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 10  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Цитата:
Сообщение от BestDay Посмотреть сообщение
Плохая мысль. Все проще. Перехватываем onmousemove в JS+HTML и передаем параметры в AS через вызов SetVariable.
Плохая мысль. SetVariable устаревший метод флешплеера. Use ExternalInterface instead.

2 satrix_vip. Поиск по форуму как обычно.
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Создать новую тему Ответ Часовой пояс GMT +4, время: 20:25.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
курсор , мышь , передача
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:25.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.