【问题标题】:How to make part of a text in a dynamic text field link to another frame just like hyperlinking to an html page?如何使动态文本字段中的部分文本链接到另一个框架,就像超链接到 html 页面一样?
【发布时间】:2012-05-12 17:54:27
【问题描述】:

我在动态文本字段中有一个很长的经典文本,用 UIScrollBar 滚动它。它里面有很多引用,一部分是网络中的网站,一部分是我在一个带有文本字段的影片剪辑的不同帧中分发的其他文本。使用属性面板中的链接和目标字段从文本内部链接到外部网站没有问题。我使用带有 gotoAndStop 方法的函数使用按钮链接到特定帧没有问题。但我无法从文本中的选定单词导航到特定框架。实际上,我什至无法使用属性面板中的链接和目标字段导航到计算机内的文件。即使单击了“将文本呈现为 html”按钮,也不会呈现 Html 标记。由于滚动条,我无法将文本更改为静态。我也不能在单词后面使用隐形按钮,因为滚动会使它们不合适。我看不到 var 如何帮助我,因为它使文本字段仅显示选定的单词。锚似乎也无济于事,因为我无法定位文件,而只能定位 http。任何想法都将受到欢迎。

【问题讨论】:

    标签: actionscript-3 hyperlink flash-cs5 frame dynamic-text


    【解决方案1】:

    你想要的都是可能的。但由于 Flash 文本字段错误,它有一个小缺点。首先,您的文本字段文本需要是 html 文本并且也是可选择的。然后看这里: Textfield link event

        public function TextField_event_link() {
            myMP3 = new Sound();
            var text:TextField = new TextField();
            text.autoSize = TextFieldAutoSize.LEFT;
            text.multiline = true;
            text.htmlText = "Hello this is my little site. Click <a href=\"event:imprint\">here</a>for the imprint. And <a href=\"event:imprint\">here</a> for the about page. And if you're coming so far, also <a href=\"event:imprint\">here</a> for the exit";
    
            list.addEventListener(TextEvent.LINK, linkHandler);
            addChild(list);
        }
    
        private function linkHandler(linkEvent:TextEvent):void {
            switch(linkEvent.text)
            {
                 case "imprint":
                     //display imprint
                     break;
                 case "about":
                     //display about
                     break;
                 case "exit":
                     //exit
                     break;
            }
        }
    

    您可以在处理程序中比较事件名称并发挥您的作用。如果您的文本不可选择,这将不起作用。如果 Adob​​e 已经用最新的播放器解决了这个问题,请不要这样做,但这困扰了我多年!

    【讨论】:

    • 谢谢,但我仍然不知道如何在包含其他未链接到任何内容的单词的文本字段中使其工作。但我也无法完全浏览您指出的 Adob​​e 页面,因为 Chrome 无法将其完全翻译成德语。但我会继续努力。考虑到文本字段中的非链接词,有关如何执行此操作的任何提示?
    • 很高兴为您提供帮助。对不起德国文档网站。懒得换语言了。德语 - 英语不再看到区别;)
    • 我不知道我是否应该创建一个新主题,因为我的新问题是在原来的问题之后,也许对你来说会很简单,Larusso。我不能在同一个文本字段中有多个事件监听器吗?
    • 当答案对您有用时,请将其标记为已回答。问候
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 2013-03-18
    • 2010-11-18
    • 2019-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多