javascript - 插入带有来自另一个链接的文本的链接 Greymonkey

标签 javascript html greasemonkey

我想要做的是为我使用的这个论坛的每个线程插入一个链接和img。链接的 href 应基于该元素的子元素的 href。 这是 HTML 的部分 View ,为了清晰起见,我删除了一些内容,如果我删除了太多内容,请告诉我。最后一个标签重复 20 次左右,具体取决于首选项中可见的线程数

<div id="content">
    <form id="page_form">
        <div id="forums">
            <table class="grid forumtable">
                <tr></tr>
                <tr></tr>
                <tr>
                    <td></td>
                    <td></td>
                    <td></td>
                    <td>
                    <div class="lastposter">
                        <a></a>
                        <a href="view/1234/?page=last#845612"><img></img></a>
                    </div>
                    </td>
                </tr>
                <tr> ...same as above.. x20 </tr>
            </table>
        </div>
    </form>
</div>

这是到目前为止我的代码,它通过插入静态链接来工作。我想要的是使用上一个链接中 # 后面的值的链接。

var lastpst = document.getElementsByClassName('lastposter');
for (var i=0; i < lastpst.length; i++){
 links = document.createElement('a');
 links.setAttribute('href','we.html');
 links.innerHTML ='<a href="we.html"><img src="/static/img/silk/zoom.png" /></a>';
 lastpst[i].appendChild(links);
}

那么我如何从lastpst[i]访问a标签并使用href创建我自己的链接?

我认为可以使用 XPATH 来编写此内容,但我无法完全理解它。在这种情况下这是一个好主意吗?

很抱歉问了一个冗长的问题。

最佳答案

根据你自己的回答,你应该自己处理 DOM 操作,而不是将其插入到另一个标签中。另外,将 A 标签放在 A 标签中可能不是一个好主意。

var lastpst = document.getElementsByClassName('lastposter');

for (var i=0; i < lastpst.length; i++){
    l = lastpst[i].getElementsByTagName('a');
    ln = l[1].getAttribute('href');
    ln = ln.replace(/(?:.*?)#([0-9]{6})/,'/post/view/$1');

    links = document.createElement('a');
    links.href = ln;

    img = document.createElement('img');
    img.src = "/static/img/silk/zoom.png"
    links.appendChild(img);

    lastpst[i].appendChild(links);
}

关于javascript - 插入带有来自另一个链接的文本的链接 Greymonkey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1702842/

相关文章:

javascript - Chrome : Notifications not working, 未请求权限

JQuery 更改两个 div 的 CSS 属性

html - 如何让 Bootstrap 看起来更 "Compact"

javascript - div 内的 p 元素比父 div 宽

javascript - 如何有效地从 javascript 访问 gzipped xml?

git - 如何使用 Git 管理我的 greasemonkey 用户脚本(以便将它们托管在 GitHub 中)

javascript - 如何使用 Highcharts 指定柱形图中相对于 X 轴标签的列位置?

javascript - 无法处理引导弹出窗口内容中的事件

javascript - NodeJS 和 ExpressJS Router.use() 错误

javascript - Scriptish 脚本需要刷新页面才能运行?