我需要使用JavaScript来搜索当前页面的源代码中的字符串,例如data-userId="2008"
,然后提取id号(本例中为2008),并创建一个超链接包括它,例如http://www.google.com?2008
。在页面源代码中查找文本并创建超链接
我一直在尝试使用indexOf和document.documentElement.innerHTML方法,但没有得到任何地方。在this post的帮助下,我已经接近了,但还没有成功。
这是我到目前为止有:
<script type="text/javascript">
function getVals() {
code = document.getElementsByTagName("html")[0].innerHTML;
results = code.match(/data-userId=(\d*)&/g);
for (i=0;i<results.length;i++) {
value = results[i].match(/data-userId=(\d*)&/);
}
}
onload = getVals;
document.write(code);
</script>
由于解决方案需要的JavaScript我们的网络上的限制。
哇!为什么不使用官方的[TreeWalker](https://developer.mozilla.org/en/docs/Web/API/TreeWalker)?而不是你自制的DOM漫步者? – Kaiido
我其实没有用过 - 看起来很有趣。我简单地检查了一下,它可能更容易使用我在答案中写的内容,而不是找出那个对象。如果使用TreeWalker有一个更简单的解决方案,你应该发布一个答案。我很想看看你如何使用它。 – Robert
感谢大家的帮助,我使用HTML元素的原因是我是一个总noob,并不知道任何更好的!我希望你的DOM方法能够工作 - 我将如何通过document.write显示在屏幕上找到的用户ID? – user1683689