带有 3 个参数的函数,用于创建前置元素

问题描述 投票:0回答:1

这是我第一次在这里发帖,如果我说了什么奇怪的话,抱歉。我目前正在学习Javascript。我只是尝试创建一个具有 3 个参数的函数:一个父元素、要创建的元素以及将进入其中的文本或内容。文本添加得很好,但用于创建元素的第二个参数似乎不起作用。

这是我尝试创建的函数

const newFirstChild = function(el,newEl,elContent){
    const selectElement = (parentElement) => document.querySelector(el);
    const newElement = (createElement) => document.createElement(newEl);
    newEl = newEl.innerText = elContent;
    selectElement(el,newEl).prepend(newEl);
}

我想做这样的事情:该函数将获取父元素、要添加的元素以及将进入其中的内容。例如,我尝试添加新的粗体文本,但添加了文本但未加粗。 我做错什么了吗?或者根本不可能做到这一点?

javascript html dom
1个回答
0
投票

您发布的函数中发生的很多事情都是错误的或根本没有意义。

例如,您创建了一个名为

newElement
的函数,但它永远不会被调用:

const newElement = (createElement) => document.createElement(newEl);

另一个问题是,当你已经有了新元素的引用时,为什么还需要创建新元素呢?如果您有对它的引用,那么它已经被创建了。也许您正在尝试复制

newEl
指向的元素?

在你的问题中,

newEl
是一个字符串吗?如果是这样,那么您可以使用以下函数创建新元素:

function myFunction(parentElem, childElemType, text){
    const childElem = document.createElement(childElemType);
    parentElem.prepend(childElem);
    childElem.innerText = text;
}

你可以这样称呼它:

myFunction(document.getElementById("parentElem"), "div", "hello world");
© www.soinside.com 2019 - 2024. All rights reserved.