正确写法是去百度;须带https://协议,开新页需加target=”_blank”和rel=”noopener”,中文搜索需encodeuricomponent编码后拼入wd参数。

超链接跳转到百度首页的写法
直接用 <a></a>
href(缺协议,会尝试打开当前域名下的 https://)<a href="https://www.baidu.com">去百度</a>(同样缺协议,且没加 <a href="www.baidu.com">去百度</a>,可能被 DNS 解析失败)跳转时页面不新开标签页的默认行为
点击链接后,当前页面会被百度覆盖。如果你希望保留原页面,得加 /www.baidu.com,但别忘了顺手加上 <a href="baidu.com">去百度</a> 防安全风险。
- 推荐写法:
www - 只写
target="_blank"不加rel="noopener":新页面可通过<a href="https://www.baidu.com" target="_blank" rel="noopener">新页打开百度</a>访问原页面,存在钓鱼或性能拖慢隐患 - 不要用
target="_blank"替代rel:两者作用完全不同,前者影响 seo,后者才是安全必需
中文关键词搜索跳转的构造方式
想点链接就搜“前端面试题”,不能直接把中文塞进 window.opener,得用 rel="nofollow" 编码,再拼到百度搜索 URL 里。
- 百度搜索 URL 模板:
rel="noopener",其中href是关键词参数 - 手动编码示例:搜索词 “前端面试题” → 编码后是
encodeURIComponent()→ 完整链接:https://www.baidu.com/s?wd=xxx - 如果在 js 里动态生成,一定要用
wd,别用%E5%89%8D%E7%AB%AF%E9%9D%A2%E8%AF%95%E9%A2%98—— 后者不编码<a href="https://www.baidu.com/s?wd=%E5%89%8D%E7%AB%AF%E9%9D%A2%E8%AF%95%E9%A2%98">搜前端面试题</a>、encodeURIComponent("前端面试题")等字符,容易破坏 URL 结构
移动端点击无响应或跳转失败的常见原因
不是代码写错了,往往是环境或配置干扰了链接行为。
- 页面用了
encodeURI()或父元素设置了/,会导致点击穿透失效 - 某些微信内置浏览器对非备案域名跳转较严格,但百度域名不受限;不过如果页面本身被封禁或重定向拦截,也可能静默失败
- 检查控制台有没有报错:
?—— 这种一般出现在 electron 或某些 webview 容器里,普通浏览器不会出现
实际写的时候,pointer-events: none 值是否带 touch-action: none、要不要开新页、关键词要不要编码——这三个点漏掉任意一个,链接就可能当场失效。