plaodj 发表于 2024-11-18 10:15

想问一下js代码 可以实现html页面点击外站链接时使用提示页面吗

想问一下js代码 可以实现html页面点击外站链接时使用提示页面吗   而内站就不出现

如网站地址是    www.a.com         在网站页面出现 *.a.com、*.*.a.com 等内站链接时点击它们直接打开页面

如果是出现外站链接   就先展示一个 专门的提示页面   这个提示页面包含这个需要点击的链接   由这个提示页跳到需要打开的外站链接

就如 csdn   知乎   简书那样

mr88fang 发表于 2024-11-18 10:22

当然可以,把你描述内容发给AI,让它给你生成一个实例html就可以了

enginge 发表于 2024-11-18 10:23

你看一下这个是不是对你有用https://blog.csdn.net/yikedoo/article/details/135623728

mirrorN 发表于 2024-11-18 10:50

可以对所有的链接都增加点击事件,阻止默认的跳转动作,然后再根据你的需求选择直接跳转或者是先跳到提示页面就行了,让ai生成了一个大致的:<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>链接跳转检测</title>
</head>
<body>
    <a href="https://example.com" class="dynamic-link">访问 Example.com</a>
    <a href="https://xxx.a.com" class="dynamic-link">访问 xxx.a.com</a>
   
    <script>
      // 获取所有的链接
      const links = document.querySelectorAll('.dynamic-link');

      // 循环给每个链接添加点击事件
      links.forEach(link => {
            link.addEventListener('click', function(event) {
                event.preventDefault(); // 阻止默认的链接跳转
               
                const url = this.href; // 获取链接的 href 属性
                const urlObj = new URL(url); // 创建 URL 对象
               
                // 检查域名
                if (urlObj.hostname === 'xxx.a.com') {
                  // 如果是 xxx.a.com,直接跳转
                  window.location.href = url;
                } else {
                  // 否则弹出确认框
                  const confirmation = confirm('您将要离开本站点,是否继续?');
                  if (confirmation) {
                        // 用户选择了确认,进行跳转
                        window.location.href = url;
                  }
                }
            });
      });
    </script>
</body>
</html>

hwn0412 发表于 2024-11-18 10:57

先阻止浏览器的超链接默认跳转行为,然后对超链接的跳转地址进行判断,根据判断结果再重新跳转到不同的界面。 大致就是下面这样子。
document.querySelector('a').addEventListener('click', function(event) {
      // 阻止默认行为,即阻止链接跳转
      event.preventDefault();

      // 在这里编写你的逻辑代码
      console.log('链接点击被拦截!');

      // 如果你想要执行跳转,可以使用以下代码
      // window.location.href = this.href;
    });

SergioQaQ 发表于 2024-11-18 14:52

我觉得你可以在实现的时候,不用a标签,用div什么的自己写个按钮,在点击事件里检查那个链接。
如果要用a标签,用event.preventDefault()这种阻止默认的事件,就是前端事件模型你可以看一看,事件捕获,目标处理,事件冒泡三个阶段,拦截掉就好了
页: [1]
查看完整版本: 想问一下js代码 可以实现html页面点击外站链接时使用提示页面吗