Javascript 修改所有出站链接

Javascript 修改所有出站链接,javascript,html,append,Javascript,Html,Append,我想修改网页中的所有出站链接。我只想在每个URL的末尾附加一个动态字符串。我用fetch来获取这个字符串。到目前为止,我能够获取和修改URL,但无法附加获取的字符串 我的代码 <!DOCTYPE html> <html> <head> <title>My Website</title> <script> fetch('https://httpbin.org/encoding/utf8') .then((respons

我想修改网页中的所有出站链接。我只想在每个URL的末尾附加一个动态字符串。我用fetch来获取这个字符串。到目前为止,我能够获取和修改URL,但无法附加获取的字符串

我的代码

<!DOCTYPE html>
<html>
<head>
  <title>My Website</title>
<script>
fetch('https://httpbin.org/encoding/utf8')
  .then((response) => {
    return response.text();
  })
  .then((text) => {
    document.getElementById("MyFetchedString").innerHTML = text.slice(0, 10);
      });
document.addEventListener( "DOMContentLoaded", modify_outbound_links);

function modify_outbound_links(){
    anchors = document.getElementsByTagName('a');
    for (let i = 0; i < anchors.length; i++) {
        let p = anchors[i].href;
        if (p.indexOf('example.com') === -1) {
        //How do i append the fetchedText? 
            anchors[i].href = p + (p.indexOf('?') != -1 ? "&" : "?") + 'FetchedText'; 
        }
    }
} </script>
  </head>

<body>

  <h2>My First Web Page</h2>
  <p>My First Paragraph.</p>

  Modify all outbound links.<br>

 <p><a href="https://google.com/">Google.com</a></p>
<p><a href="https://yahoo.com/">Yahoo.com</a></p>
<p><a href="https://example.com/">mydomain.com</a></p>

<p id="MyFetchedString"></p>

</body>

我的网站
取('https://httpbin.org/encoding/utf8')
。然后((响应)=>{
返回response.text();
})
。然后((文本)=>{
document.getElementById(“MyFetchedString”).innerHTML=text.slice(0,10);
});
document.addEventListener(“DOMContentLoaded”,修改出站链接);
函数modify_outbound_links(){
anchors=document.getElementsByTagName('a');
for(设i=0;i
修改所有出站链接。


请帮助我将收到的字符串附加到每个出站URL。我的主要挑战是这一JavaScript行:锚定[i].href=p+(p.indexOf(“?”)!=-1?”&:“?”+”FetchedText如何将其附加到此处?”

我认为您需要的是这样的东西,我注意到您删除了API中的旧链接,但我将其放回原处,以防您需要它来处理代码

document.addEventListener(“DOMContentLoaded”,修改出站链接);
函数modify_outbound_links(){
取('https://api.exchangeratesapi.io/latest?symbols=USD,英镑)
。然后((响应)=>{
返回response.json();
})
。然后((json)=>{
anchors=document.getElementsByTagName('a');
for(设i=0;i

我的网站
我的第一个网页
我的第一段

修改所有出站链接。


你的代码运行良好。你能详细说明你想要实现的目标吗?你好@mamounothman,我已经编辑了这个问题。请查收。非常感谢@mamounothman。代码可以很好地处理json数据,但我希望以文本形式获取内容。请帮助我实现这一点。我想获取的内容text@gilbaO很抱歉,没有注意到您之前的评论,我们将检查它并返回给您。FetchedText表示什么,您能给出
标记的名称和示例,以及它应该是什么样子的吗?FetchedText是一个类似“1234abc”的字符串。它是从提取“”接收的text.slice(8个字符)