在提供的字符串中设置锚标记

发布于 2024-11-14 02:44:42 字数 743 浏览 1 评论 0原文

我想在提供的字符串中设置锚标记。它在 http:// 之后在 javascript 中进行搜索,并将其设置为锚标记。

function createLink(text, node){//text is the provided string
    var start = text.indexOf('http://');
    var end = text.indexOf(' ', start) + 1 || text.length - 1; //provides me with the wrong index
    var link = text.substring(start, end);
    var newLink = document.createElement('a');
    newLink.href = link;
    newLink.className = 'link';
    newLink.target = '_blank';
    newLink.innerHTML = link.substr(0, 20);
    if(link.length >= 20){
        $(newLink).append('...');
    }
    var head = text.substring(0, start);
    var tail = text.substring(end);
    node.innerHTML = '';
    $(node).append(head).append(newLink).append(tail);
}

I want to set a anchor tag in a provided string. It search in javascript after http:// and make it to an anchor tag.

function createLink(text, node){//text is the provided string
    var start = text.indexOf('http://');
    var end = text.indexOf(' ', start) + 1 || text.length - 1; //provides me with the wrong index
    var link = text.substring(start, end);
    var newLink = document.createElement('a');
    newLink.href = link;
    newLink.className = 'link';
    newLink.target = '_blank';
    newLink.innerHTML = link.substr(0, 20);
    if(link.length >= 20){
        $(newLink).append('...');
    }
    var head = text.substring(0, start);
    var tail = text.substring(end);
    node.innerHTML = '';
    $(node).append(head).append(newLink).append(tail);
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

多情癖 2024-11-21 02:44:42

我认为您落后了 1:

function createLink(text, node){ //text is the provided string
    var start = text.indexOf('http://');
    var end = (text.indexOf(' ', start) + 1 || text.length - 1) - 1;
    var link = text.substring(start, end);

    var $a = $("<a>", {
        href: link,
        "class": "link",
        target: "_blank",
        html: link.substr(0, 20) + (link.length >= 20 ? "..." : ""),
    });

    var head = text.substring(0, start);
    var tail = text.substring(end);

    $(node).append(head).append($a).append(tail);
}

http://jsfiddle.net/hunter/vNrrR/

I think you were off by 1:

function createLink(text, node){ //text is the provided string
    var start = text.indexOf('http://');
    var end = (text.indexOf(' ', start) + 1 || text.length - 1) - 1;
    var link = text.substring(start, end);

    var $a = $("<a>", {
        href: link,
        "class": "link",
        target: "_blank",
        html: link.substr(0, 20) + (link.length >= 20 ? "..." : ""),
    });

    var head = text.substring(0, start);
    var tail = text.substring(end);

    $(node).append(head).append($a).append(tail);
}

http://jsfiddle.net/hunter/vNrrR/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文