【问题标题】:Flash AS3 rollover and button with ClickTagFlash AS3 翻转和带有 ClickTag 的按钮
【发布时间】:2013-11-18 12:40:39
【问题描述】:

我有一个带有 ClickTag 和悬停功能的横幅。

我的问题是由于悬停功能,用户无法点击按钮。

我的代码用于 ClickTag:

knap1.addEventListener(MouseEvent.CLICK, ADFclicked);

function ADFclicked(event:MouseEvent) { AdfURLNavigator.navigateToUrl( AdfFlashVarsUtil.getParameter("clickTAG"), AdfFlashVarsUtil.getParameter("landingPageTarget")); }

对于悬停功能:

var holder:MovieClip = new MovieClip();

btn.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
btn.addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);
btn.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);

function mouseOverHandler(e:MouseEvent):void{
    //creating a new tooltip instance
    var tooltip:Tooltip = new Tooltip();
    //we tell the holder to hold our tooltip
    holder = tooltip;
    //positioning the tooltip on the stage
    holder.x = 190;
    holder.y = 280;
    //adding the tooltip to the stage 
    addChild(tooltip);
}

function mouseOutHandler(e:MouseEvent):void{
    //we remove the holder when the cursor is outside our button
    removeChild(holder);
}

function mouseMoveHandler(e:MouseEvent):void{
    holder.x = 190;
    holder.y = 280;
}

有人可以帮忙吗?

【问题讨论】:

  • 在您的两个示例中,按钮由不同的名称引用。这只是一个错字吗?

标签: actionscript-3 flash hover rollover


【解决方案1】:

我会假设,没有看到整个代码,btn 对象正在覆盖 knap1 对象,因此您无法单击 btn 下方的任何内容。

如果您想在整个横幅上设置悬停功能,请尝试使用MOUSE_LEAVE 事件来检测鼠标离开,并使用MOUSE_MOVE 来跟踪鼠标离开后是否回到 Flash 对象上。至于MOUSE_MOVE 事件,您可以在stage 中添加监听器以检测鼠标移动,而无需任何额外的容器。

【讨论】:

  • 是的。我有两个按钮,上面覆盖着保持舞台。一个命名为 btn,另一个命名为 knap1。我想要它,所以只有 knap1 你可以按下并激活 ClickTag。所以我应该在 btn 按钮上使用 Mouse_leave?
  • 我明白了。我只需要在舞台上添加监听器。非常感谢 Szczups
【解决方案2】:

嘿,您正在使用 mousevent 进行一次悬停和单击。所以最好删除 addeventlistener 并将鼠标悬停在按钮中写为内联。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-30
    • 1970-01-01
    • 2016-03-11
    • 1970-01-01
    • 1970-01-01
    • 2014-11-30
    • 2013-10-29
    相关资源
    最近更新 更多