在Flash中,我有一个TextField,带有带有“ event:”前缀的超链接。这将触发链接单击的事件,在该事件中,我正在读取事件ID代码并做出相应的响应。
问题是每次单击链接时,Web浏览器都会打开带有相同链接的链接。如何禁用网络浏览器的打开?
无论是在Flash Player还是在AIR中,Web浏览器都会弹出打开的唯一原因是您忘记将其添加event:
到锚href的开头。
您不需要使用event.preventDefault()
或event.stopPropagation()
阻止Web浏览器打开。实际上,您甚至都不需要订阅该TextEvent.LINK
事件。您需要做的就是确保您将其添加event:
为锚标记的href的前缀。
经过扩展的调试后,我发现只有href负责发生以下两种情况之一:
行为1-您的href具有event:
前缀
TextEvent.LINK
活动,则该事件将在用户单击链接后立即触发。如果没有,则什么也不会发生。TextEvent.LINK
事件可以被添加到任何父的DisplayObject,如父的Sprite,或甚至在舞台。不需要将其专门添加到有问题的TextField中。行为2-您的href没有event:
前缀
TextEvent.LINK
被点击此类链接时不火。因此,它不能用于阻止网络浏览器打开。target
属性打开/处理链接href 。target
是,_self
并且您已经在Web浏览器中(使用Flash Player),则将重复使用相同的窗口/选项卡以打开链接。如果您在AIR中,则会使用链接弹出默认的Web浏览器。本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句