Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.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
Javascript 闪光阶段失去焦点_Javascript_Actionscript 3_Flash_Dom Events_Addeventlistener - Fatal编程技术网

Javascript 闪光阶段失去焦点

Javascript 闪光阶段失去焦点,javascript,actionscript-3,flash,dom-events,addeventlistener,Javascript,Actionscript 3,Flash,Dom Events,Addeventlistener,我在FlashActionScript3中为一个客户端构建了这个非常出色的滚动缩略图图像查看器。(基本上,它只是根据鼠标位置向上或向下滚动)。它的工作原理是这样的,(我永远无法得到正确的百分比,以便它显示最顶端的图像),但是,这不是重点。真正让我恼火的是,当我打开浏览器窗口并加载.swf,然后单击桌面上的另一个应用程序时,浏览器窗口中愚蠢的滚动缩略图区域开始崩溃 “我的老鼠在哪里?”我猜它在想 是否有舞台。无焦点事件我可以告诉我的滚动缩略图区域到STFU 我甚至会考虑编写一些JavaScript

我在FlashActionScript3中为一个客户端构建了这个非常出色的滚动缩略图图像查看器。(基本上,它只是根据鼠标位置向上或向下滚动)。它的工作原理是这样的,(我永远无法得到正确的百分比,以便它显示最顶端的图像),但是,这不是重点。真正让我恼火的是,当我打开浏览器窗口并加载.swf,然后单击桌面上的另一个应用程序时,浏览器窗口中愚蠢的滚动缩略图区域开始崩溃

“我的老鼠在哪里?”我猜它在想

是否有舞台。无焦点事件我可以告诉我的滚动缩略图区域到STFU

我甚至会考虑编写一些JavaScript来调用Flash函数,如果这是一个首选的技术。

function checkMousePos(e:Event):void
{ 
  if(mouseX < 145){
    try{
        var sHeight:int = MovieClip(root).stageHeight;
    }catch(Error){
        trace("stage not loaded");
    }
    if(mouseY > (sHeight/2) + 100){
        if(tHolder.y-50 > - (compHeight-sHeight)){
            Tweener.addTween(tHolder, {y:tHolder.y - 90, time:1,transition:"easeOutCubic"});
        }
        }else if(mouseY < (sHeight/2) - 100){
            if(tHolder.y+50 < 80){
            Tweener.addTween(tHolder, {y:tHolder.y + 90, time:1,transition:"easeOutCubic"});
            }else{
               Tweener.addTween(tHolder, {y:80, time:1,transition:"easeOutCubic"});
            }
        }
    }
}
函数checkMousePos(e:Event):无效
{ 
if(mouseX<145){
试一试{
var-sHeight:int=MovieClip(root).stageHeight;
}捕获(错误){
跟踪(“未加载的阶段”);
}
如果(鼠标>(sHeight/2)+100){
如果(tHolder.y-50>-(组件高度){
Tweener.addTween(tHolder,{y:tHolder.y-90,时间:1,过渡:“easeOutCubic”});
}
}否则如果(鼠标<(sHeight/2)-100){
如果(t文件夹y+50<80){
Tweener.addTween(tHolder,{y:tHolder.y+90,时间:1,过渡:“easeOutCubic”});
}否则{
addTween(tHolder,{y:80,时间:1,转变:“easeOutCubic”});
}
}
}
}

我建议在Javascript中检测窗口焦点事件onblur和onfocus(),然后使用ExternalInterface()向SWF文件发送一个enable/disable调用,因此在HTML中可能会出现类似的情况(假设这里是swfobject,但这不是必需的):

在SWF文件中,使用一些等效的外部接口代码来连接这些方法:

public class MyApplication extends ...
{
    public function MyApplication ():void
    {
        ExternalInterface.addCallback("disableMouseScrolling", disableMouseScrolling);
        ExternalInterface.addCallback("disableMouseScrolling", enableMouseScrolling);
        ...
    }
    private function disableMouseScrolling ():void
    {
    }
    private function enableMouseScrolling ():void
    {
    }
    ...
}
希望这有帮助。我在IE8、Firefox3和Crome4中使用过它


关于,

我建议在Javascript中检测窗口焦点事件onblur和onfocus(),然后使用ExternalInterface()向SWF文件发送一个enable/disable调用,因此在HTML中可能有类似的内容(假设这里有swfobject,但这不是必需的):

在SWF文件中,使用一些等效的外部接口代码来连接这些方法:

public class MyApplication extends ...
{
    public function MyApplication ():void
    {
        ExternalInterface.addCallback("disableMouseScrolling", disableMouseScrolling);
        ExternalInterface.addCallback("disableMouseScrolling", enableMouseScrolling);
        ...
    }
    private function disableMouseScrolling ():void
    {
    }
    private function enableMouseScrolling ():void
    {
    }
    ...
}
希望这有帮助。我在IE8、Firefox3和Crome4中使用过它


您好,

您可以发布一个指向滚动条的链接吗?或者一些滚动代码?嘿,莱昂,刚刚添加了这个功能。当我的电影剪辑加载时,我会添加一个事件。输入调用此函数的帧事件侦听器。顺便说一句,如果单击“打印”或“品牌”箭头,则可以使用滚动条。您可以发布滚动条的链接吗?或者一些滚动代码?嘿,莱昂,刚刚添加了这个功能。当我的电影剪辑加载时,我添加了一个事件。输入调用此函数的帧事件侦听器。顺便说一句,如果你单击“打印”或“品牌”箭头,滚动器就在这里,你可以使用它。这让我非常兴奋,只是它没有注册,因为舞台设置为100%的浏览器窗口。我不确定这是否是它不起作用的原因,但事实并非如此。不管你的舞台是100%还是其他什么状态。当鼠标离开舞台时触发此事件。当事件被触发时,您所要做的就是停止Tweens和鼠标侦听器。有很多教程,但先看看这一点:我想我发现它不起作用,因为我用“发布预览”尝试了它,我只是将事件设置为触发{trace(“off”)},它不会出现。现在好像在工作。。。现在我只需要找出如何在我的蹩脚代码中实现它。你知道吗。。。它对鼠标输出有效。。。但当实际的浏览器失去焦点时,我仍然得到了一个令人毛骨悚然的结果。这让我兴奋不已,只是它没有注册,因为舞台被设置为浏览器窗口的100%。我不确定这是否是它不起作用的原因,但事实并非如此。不管你的舞台是100%还是其他什么状态。当鼠标离开舞台时触发此事件。当事件被触发时,您所要做的就是停止Tweens和鼠标侦听器。有很多教程,但先看看这一点:我想我发现它不起作用,因为我用“发布预览”尝试了它,我只是将事件设置为触发{trace(“off”)},它不会出现。现在好像在工作。。。现在我只需要找出如何在我的蹩脚代码中实现它。你知道吗。。。它对鼠标输出有效。。。但当实际的浏览器失去焦点时,我仍然会得到一个奇怪的结果。
public class MyApplication extends ...
{
    public function MyApplication ():void
    {
        ExternalInterface.addCallback("disableMouseScrolling", disableMouseScrolling);
        ExternalInterface.addCallback("disableMouseScrolling", enableMouseScrolling);
        ...
    }
    private function disableMouseScrolling ():void
    {
    }
    private function enableMouseScrolling ():void
    {
    }
    ...
}