Просмотр полной версии : Событие keydown не наступает !?
Событие keydown не наступает (несмотря на нажатие клавиш) до тех пор пока не наступит событие mouseDown, после этого все работает правильно в соответствии с кодом.
Происходит это при воспроизведении в браузерах, в среде Flash-разработки все отрабатывает правильно.
Манипуляции с фокусом эффекта не дают.
Как победить?
chingachgoog
26.02.2008, 15:04
А манипуляции с фокусом где проводятся и как?
CrazyFlasher
26.02.2008, 15:10
а рамка случайно не появляется вокруг флэш контента (в ИЕ)? :)
пробовал так:
ff = new Object()
....
ff.onKeyDown = function()
{
if (Key.isDown(...)) {...}
}
Key.addListener(ff)
или просто:
keycheck = function()
{
if (Key.isDown(...)) {...}
}
если привязать к какому-нибудь клипу on (keyPress "...") {...} – ситуация не меняется
(т.е. работает, но только после того как кликнуть мышкой)
рабочий пример здесь: http://web-photos.ru/demo/ должны работать в частности клавиши со стрелками
рамки нет, поскольку она отключена ява-скриптом swfobject.js. Скрипт при отключении на эту ситуацию не влияет.
utr, для оформления своего кода надо использовать теги . Исправьте.
Molecula
27.02.2008, 02:00
У меня нормально работает, т.е. загрузил сайт и сразу клавишами потыкал, фотки туда-сюда ездиють.
Использовал ИЕ7.
chingachgoog
27.02.2008, 09:59
да у меня тоже после клика лишь сработало.
так где фокус назначается?
тот код, который я указывал, все проверки клавиш стоит на _root
(у меня Safari Mac / но на ИЕ6 ведет себя также)
chingachgoog
28.02.2008, 01:03
в коде выше фокус не назначается
не знаю как и куда этот фокус нужно ставить, мне казалось, что для события keydown фокус не нужен.
(?) что-нибудь типа:
_root.createTextField("tf", 3, 220, 10, 200, 100);
tf.type = "input";
Selection.setFocus("tf");
пока ничего не выходит
chingachgoog
28.02.2008, 11:11
Вы не поняли. Тут дело не в скрипте во флешке. А в фокусе самого флеш-плеера на странице браузера. Для понимания этого, запустите StandAlone плеер на рабочем столе, снимите с него фокус (кликните на другом окне) и посмотрите какие события он обрабатывает после этого.
мало понимаю HTML и javascript.
Вот мой index
попробовал добавить focus() см.выделенная строка, но, видимо неправильно.
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251"/>
</head>
<body bgcolor="#888888" text="black" vlink="black">
<!-- SWFObject -->
<script type="text/javascript" src="swfobject.js"></script>
<style type="text/css">
/* hide from ie on mac \*/
html {
height: 100%;
overflow: hidden;
}
#flashcontent {
height: 100%;
}
/* end hide */
body {
height: 100%;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<div id="flashcontent">
<div align="center">...</div>
<script type="text/javascript">
// <![CDATA[
var so = new SWFObject("wp4.swf", "sotester", "100%", "100%", "8","#888888");
so.addParam("quality", "best");
<!-- so.addVariable("a", "aa");-->
so.addParam("scale", "noscale");
so.write("flashcontent");
window.flashcontent.focus();
// ]]>
</script>
</body>
</html>
"куда ставить-то?"
есть такая несколько туманная на обнадеживающая в документе описывающем
SWFObject.js фраза
SWFObject определяет весию Flash player начиная с 3 и, так как вывод
производится динамически, «активировать» Flash контент пользователю не
нужно.
источник: http://blog.deconcept.com/swfobject/
gameplaymer
15.05.2008, 23:19
==============
мало понимаю HTML и javascript.
Вот мой index
попробовал добавить focus() см.выделенная строка, но, видимо неправильно.
=====================
document.flashcontent.focus();
помогает для IE а вот для FireFox - сам найти не могу
Помогите кто уже решил эту задачу?
Crazy Driver
31.07.2008, 10:06
==============
мало понимаю HTML и javascript.
Вот мой index
попробовал добавить focus() см.выделенная строка, но, видимо неправильно.
=====================
document.flashcontent.focus();
помогает для IE а вот для FireFox - сам найти не могу
Помогите кто уже решил эту задачу?
document.getElementById("flashcontent").focus();
Работает во всех браузерах.
darksranger
31.07.2008, 11:03
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>SWFObject 2 dynamic publishing example page</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
swfobject.embedSWF("mySWF.swf", "myContent", "900", "900", "9.0.0", "expressInstall.swf");
</script>
</head>
<body>
<div id="myContent">
<h1>Alternative content</h1>
<p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>
</div>
</body>
</html>
попробуйте так
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.