使用JS实现点击YouTube图标跳转Google.com功能失效咨询
问题根因
- 全局对象调用错误:
window是浏览器内置的全局对象,无需通过DOM元素访问。你代码中document.getElementById("yt").window本质是尝试读取<i>标签元素上不存在的自定义属性,完全无法获取到全局window实例,无法触发跳转。 - 跳转地址格式非法:未添加
https:///http://协议头的地址会被浏览器识别为当前站点下的相对路径,不会跳转到外部站点。
修正方案
最小改动修正后的JS代码
直接修改原有youtube函数即可:
function youtube() { window.location.href = "https://www.google.com"; }
(可选)符合前端规范的优化写法
如果要去除HTML内联事件绑定,可先删除<i>标签上的onclick="youtube()"属性:
<div class="yt" > <i class="fab fa-youtube fa-3x" id="yt"></i> </div>
再补充绑定点击事件的JS逻辑:
document.addEventListener('DOMContentLoaded', function() { document.getElementById('yt').addEventListener('click', function() { window.location.href = "https://www.google.com"; }); });
内容的提问来源于stack exchange,提问作者Reyyan
相关产品推荐
相关产品推荐

