javascript - Element.querySelector 未定义

标签 javascript dom

为什么此代码会在控制台中引发错误读取 TypeError: pizzaBox.querySelector is not a function。 (在 'pizzaBox.querySelector('h6')' 中,'pizzaBox.querySelector' 未定义)?

function addToppingsToAll (toppings)
{
    var pizzaBoxHolder = document.getElementById("PizzaBoxHolder");
    var PizzaBoxList   = pizzaBoxHolder.childNodes;
    for ( var i = 0 ; i < pizzaBoxList.length ; i++ )
    {
        var pizzaBox            = pizzaBoxList[i];
        toppingList             = pizzaBox.querySelector('h6');
        toppingList.textContent = "You have " + toppings " on your pizza";
    }
}

最佳答案

您的代码中至少存在三个问题:

  1. 您可能正在遍历一些没有.querySelector() 方法的文本节点。
  2. 您没有初始化您的 for 循环迭代变量 i
  3. 您尝试使用一个未声明的变量 lineBoxList

您可以通过仅使用 .querySelectorAll() 并让选择器为您完成更多工作来简化事情。

function addToppingsToAll (toppings) {
    var toppingItems = document.querySelectorAll("#PizzaBoxHolder h6");
    for (var i = 0; i < toppingItems.length; i++) {
        toppingItems[i].textContent = "You have " + toppings " on your pizza";
    }
}

关于javascript - Element.querySelector 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33323840/

相关文章:

javascript - 选择angular2中的多个dom元素

javascript - 如何使用用户输入动态传递数据集属性?

javascript - 将参数传递给 redux 调度函数

javascript - li 元素的子节点给出 [#text, <ul> … </ul> , #text]

javascript - 如果 `element.style.height` 为 `element.style.box-sizing`,则设置 `border-box` 无法按预期工作

javascript - 使用 jQuery 和 CSS 根据行和列的奇偶性设置表数据单元格的样式

javascript - 是否有一种非天真的方法来计算 DOM 偏移量的逻辑偏移量?

javascript - 在多个元素上设置路径点

javascript - 为什么我的代码返回一个 promise ?

JavaScript - 预加载图像