Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox无法侦听JavaScript时;选择";闪光物体_Javascript_Jquery_Flash_Firefox_Keydown - Fatal编程技术网

Firefox无法侦听JavaScript时;选择";闪光物体

Firefox无法侦听JavaScript时;选择";闪光物体,javascript,jquery,flash,firefox,keydown,Javascript,Jquery,Flash,Firefox,Keydown,我目前正在建立一个网站,其中也包含通过播放歌曲。它还包含JavaScript按键功能,因此用户可以使用箭头键导航到下一页和上一页,以及上一票和下一票页面。 除了Firefox,它在所有浏览器上都可以正常工作。 在FF上,按键侦听器最初可以工作,但是一旦我使用播放音乐的flash对象(例如暂停),Firefox似乎会以某种方式“选择”flash对象,看起来像(对不起,需要10次重复才能发布图像) 当flash对象被“选中”时,JavaScript键侦听器根本不工作。但是,只要我在播放器外的某个地方

我目前正在建立一个网站,其中也包含通过播放歌曲。它还包含JavaScript按键功能,因此用户可以使用箭头键导航到下一页和上一页,以及上一票和下一票页面。 除了Firefox,它在所有浏览器上都可以正常工作。 在FF上,按键侦听器最初可以工作,但是一旦我使用播放音乐的flash对象(例如暂停),Firefox似乎会以某种方式“选择”flash对象,看起来像(对不起,需要10次重复才能发布图像)

当flash对象被“选中”时,JavaScript键侦听器根本不工作。但是,只要我在播放器外的某个地方单击,它就会被“取消选择”,按键侦听器就会再次工作。 有解决办法吗

以下是flash对象的代码:

<object width="250" height="40" classid="(some random number)"
                        id="(some random id)" name="(same as id)">
<param name="movie" value="http://grooveshark.com/songWidget.swf" />
<param name="wmode" value="window" />
<param name="allowScriptAccess" value="always" />
<param name="flashvars" value="hostname=grooveshark.com&songID=(song id)&style=metal&p=(1 or 0)" />
<object type="application/x-shockwave-flash" data="http://grooveshark.com/songWidget.swf" width="250" height="40">
<param name="wmode" value="window" /><param name="allowScriptAccess" value="always" />
<param name="flashvars" value="hostname=grooveshark.com&songID=(song id)&style=metal&p=(1 or 0)" />
<span><a href=(Url on Grooveshark)>(song name) by (artist) on Grooveshark</a></span></object></object>

在除Firefox之外的所有浏览器上都能正常工作
您测试了哪些其他浏览器?谷歌Chrome有一个flash播放器,这意味着它的行为可能不同于我自己没有测试过的浏览器,我有一个测试人员向我提供了信息。我会在其他浏览器上试用,并让您知道。如果是这样的话,有没有办法解决这个问题?我已经在Opera上做了测试,它也在Opera上起作用。我目前无法测试IE,因为我使用的是Mac OSX,Safari上的flash objext目前根本不起作用(?)-因为Opera也是一款带有集成flash播放器的基于铬的浏览器,我可以假设这就是问题所在。那么,有没有办法解决这个问题?
var map = [];

        window.onkeydown = window.onkeyup = function(e){
            e = e || event; // to deal with IE
            map[e.keyCode] = e.type == 'keydown';

            if (map[37]) { // Left Key
                window.location.href = "{{ path('sctn_history', { 'target': 'backwards' } ) }}";
            }
            else if (map[39]) { // Right Key
                {% if history_position > 0 %}
                window.location.href = "{{ path('sctn_history', { 'target': 'forwards' } ) }}";
                {% else %}
                window.location.href = "{{ path('sctn_findsong') }}";
                {% endif %}
            }
            if (map[38]){ // Up Key
                if (karma == 'none') { changeKarma('plus'); }
                if (karma == 'minus') { changeKarma('minus'); }
            }
            if (map[40]){ // Down Key
                if (karma == 'none') { changeKarma('minus'); }
                if (karma == 'plus') { changeKarma('plus'); }
            }
        }