JavaScript ES6到基本javascript

时间:2018-08-28 09:52:55

标签: javascript jquery

我创建了两个jquery脚本,将我的孩子从父母那里移走并删除了该类,然后创建了。

1)添加一个新类:

    let groups = $(".st-footer--navigation");

    let child = groups.find(".st--footer-column");

    if (!child.length) {
        let groups = $(".st-footer--navigation");

        for (let i of groups) {
            let childrens = i.children;
            let stFooterColumn = document.createElement("div");

            // add the class
            stFooterColumn.classList.add("st--footer-column");

            // add each child to the new div
            while (childrens.length) {
                stFooterColumn.appendChild(childrens[0])
            }

            // append the div to previews to group
            i.appendChild(stFooterColumn)
        }
    }

2)删除课程:

    let sts = document.getElementsByClassName("st--footer-column");

    for (let i of sts) {
        while (i.childElementCount) {
            i.parentNode.appendChild(i.firstElementChild)
        }
        i.parentNode.removeChild(i)
    }

此代码用es6编写。我想这个代码是由这个较旧的标准以不同的方式创建的,但是要这样做。 我的代码需要使用foreach循环。我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

您可以使用babel

之类的工具将ES6编译为早期版本。

您可以在其文档中找到一个教程

答案 1 :(得分:0)

对于迭代,您的jquery对象groupssts可以使用each api。并以这种方式进行编码

groups.each(function() {
  let childrens = this.children;
  let stFooterColumn = document.createElement("div");
  stFooterColumn.classList.add("st--footer-column");
  while (childrens.length) {
         stFooterColumn.appendChild(childrens[0])
  }
  this.appendChild(stFooterColumn)
});
//----------
sts.each(function() {
    while (this.childElementCount) {
         this.parentNode.appendChild(this.firstElementChild);
    }
    this.parentNode.removeChild(this);
});