永发信息网

js获取网页当中所有标签里面的文本

答案:1  悬赏:20  手机版
解决时间 2021-02-06 23:10
  • 提问者网友:沉默菋噵
  • 2021-02-05 22:44
<p>ths is p<a href="">this is a</a></p>
<i>this is i</i>
<b>this is b</b>
像这样的无规则标签,怎么获取里面的文本,p标签里面的this is p用一个font包起来,并将它写入数组0,p标签的子标签A里面的文本用font包起来,写入数组1,下面的标签类似。最后的结果是:
array=["<font>this is p</font>","<font>this is a</font>","<font>this is i</font"]以此类推,请问用JS怎么实现,我是看了谷歌网页翻译工具才想到的这个问题,想写一个类似的程序,用百度翻译做。
最佳答案
  • 五星知识达人网友:低音帝王
  • 2021-02-06 00:00
<!DOCTYPE HTML>
<html>
<head>
<meta charset=UTF-8>
<title>recursion</title>
<style type="text/css">
</style>
<script type="text/javascript">
var array = [];
    onload = function ()
    {
    var tags = document.body.getElementsByTagName ('*');
    for ( var i = 0; i < tags.length; i++)
    {
    array.push (getText (tags[i]));
    }
    console.log (array);
    }

    var getText = function (dom)
    {
     var index = 0, html = dom.innerHTML;
    while (dom.children.length && index < dom.children.length)
    {
     var chtml = dom.children[index].outerHTML;
html = dom.innerHTML.replace(chtml, '');
     index++;
    }
    return "<font>" + html + "</font>";
    }
</script>
</head>
<body>
<p>
ths is p<a href="">this is a</a>wyz
</p>
<i>this is i</i>
<b>this is b</b>
</body>
</html>
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯