首页 > 解决方案 > chrome js 和 jquery:添加链接?

问题描述

我正在尝试将文本链接添加到带有“用户 javascript 和 css”扩展名的 youtube 页面中。但是下面的 js 代码什么也没做,我不确定,但 Chrome 控制台似乎对我的 js 什么也没说。

$(window).load(function() {
  var ytu = document.getElementsById('eow-title');
  var newlink = document.createElement('a');
  newlink.setAttribute('href', window.location.href);
  newlink.setAttribute('innerHTML', document.title);
  newlink.setAttribute('target', '_blank');
  $(newlink).insertAfter(ytu);
});

我检查了jquery2.1.0 min选项。

标签: javascriptjquery

解决方案


在您的文档加载后您的代码$(window).load()未执行,这可能是由 chrome 产生的问题。所以你必须使用 $(document).ready()方法来修改 DOM。

另一件事是您写document.getElementsById()的不正确,实际功能是document.getElementById(). 请检查以下代码段的代码。

$(document).ready(function() {
  var ytu = document.getElementById('eow-title');
  var newlink = document.createElement('a');
  newlink.setAttribute('href', window.location.href);
  newlink.setAttribute('innerHTML', document.title);
  newlink.setAttribute('target', '_blank');
  newlink.innerHTML = "Link";
  $(newlink).insertAfter(ytu);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>
<div>
  <div id="eow-title"></div>
</div>


推荐阅读