javascript - appendChild()在我的YouTube chrome扩展程序中不起作用

标签 javascript google-chrome dom google-chrome-extension youtube

我在content.js文件中写了两个函数。
通过“标签”名称(document.getElementsByTagName)查找元素。
之后,我在两个函数中使用了它,但在此标记中附加child时在第二个函数中不起作用。

这不起作用:

function buttond(){
var i=0;
for(i=0;i<10;i++){
   var ge=document.getElementsByTagName("ytd-compact-video-renderer")[i];
   var node=createElement("button");
   var text=createTextNode("click");
    node.appendChild(text);
    ge.appendChild(node);
    }
}

但这是为什么吗?
function butstop(){
var i=0;
 for(i=0;i<10;i++){
   var ge=document.getElementsByTagName("ytd-compact-video-renderer")[i];
      if(ge && ge.style.display=="none"){
         ge.style.display="block";
}
     else if(ge){
    ge.style.display="none";

 }

}
}

我正在做的最后工作是在下面的图像链接中添加播放下一个按钮。

image

最佳答案

您的问题在这里:

   var node=createElement("button");
   var text=createTextNode("click");

您需要将其更改为:
   var node=document.createElement("button");
   var text=document.createTextNode("click");

在此之后,它将正常工作。

编辑:JSFiddle Link

关于javascript - appendChild()在我的YouTube chrome扩展程序中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47533780/

相关文章:

javascript - HTML页面中元素的加载、渲染和执行顺序是怎样的?

javascript - Webgl Chrome 空白 Canvas

javascript - 如何从 React 中 render 方法之外的函数渲染组件?

javascript - 为什么在删除列表项 [Js DOM] 时,removeChild() 不起作用?

php - 简单的 HTML DOM 解析器 - 抓取没有 id 或类的 html 内容

javascript - 将 toggleClass 与 jQuery 一起使用时 css3 转换不起作用

javascript - 使用按钮创建 HTML 元素

javascript - 使用 Ajax 和 Bootstrap Modal 进行 Laravel 表单验证问题

javascript - 自动填充时密码输入字段长度 = 0 (android chrome)

javascript - 如何在 Google Chrome 控制台中访问由 3rd 方 API 检索到的 JSON 数据?