【问题标题】:Turn text inside Javascript array in to a hyperlink将 Javascript 数组中的文本转换为超链接
【发布时间】:2012-08-10 01:01:11
【问题描述】:

目前我有这个:http://jsfiddle.net/492cy/

我想将 span id=textRange 设置为超链接。由于我有不同的文本(来自数组)填充 textRange,我希望每个文本(“a dude”、“a man”、“a human”)成为不同的超链接。 因此最终结果是:点击“a dude”会进入 website1.com,“a man”会进入 website2.com,“a human”会进入 website3.com

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    不确定您要使用哪个链接,但这有效并且可以让您继续前进。 你可以使用任何你想要的href,但这向你展示了如何更新<a>元素的href。

    jsFiddle Example

    function changeText() {
        document.getElementById('textRange').innerHTML=Texts[count];
        document.getElementById('textRange').href = "http://website" + count + '.com';
        count++;
        if (count == Texts.length) { count = '0'; }
        setTimeout(changeText, delay * 1000);
    }
    

    【讨论】:

    • 如何让链接在另一个标签页中打开 (target="_blank")?
    • 是的,将该属性添加到<a target="_blank"> 元素。它应该在新选项卡中打开,但最终由浏览器决定该行为。
    【解决方案2】:

    这就是你想要的:

    var delay = "3"; //how many seconds you wnat the delay to be
    var count = '0';
    var Texts = ["a dude", "a man", "a human"];
    var Links = ["http://www.google.com", "http://www.yahoo.com", "http://www.bing.com"];
    
    function changeText() {
        document.getElementById('textRange').innerHTML = "<a href='" + Links[count] + "'>" + Texts[count] + "</a>";
        count++;
        if (count == Texts.length) {
            count = '0';
        }
        setTimeout("changeText()", delay * 1000);
    }
    

    http://jsfiddle.net/492cy/4/

    【讨论】:

    • 如何让链接在另一个标签页中打开 (target="_blank")?
    • 没错。只需在构造链接的行中的href 之前添加target='blank'
    猜你喜欢
    • 2020-02-15
    • 1970-01-01
    • 1970-01-01
    • 2011-07-10
    • 2017-08-07
    • 2015-03-08
    • 2021-10-03
    • 1970-01-01
    • 2016-02-12
    相关资源
    最近更新 更多