我如何使用JS删除父级的Child2

时间:2019-05-28 21:28:07

标签: javascript

我本来要通过父级删除Child2,但是它不起作用

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {

        var cell :UICollectionViewCell!

        if indexPath.row == 0{
            cell = collectionView.dequeueReusableCell(withReuseIdentifier: "addImageCell", for: indexPath) as! AddImageCollectionViewCell
        }
        else{
             cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ItemCell", for: indexPath) as! ItemCollectionViewCell
            cell.contentImage = self.droppedItemList[indexPath.row] //error here
        }
        return cell
    }

它只是不删除任何东西

2 个答案:

答案 0 :(得分:2)

使用 c1001a / \ ... <-c1000a c1002a <-- master \ / c1001b <-- temporary 代替 c1001a / \ ... <-c1000a c1002a <-- master \ / c1001b ,因为children包括其他元素类型,而childNodes只是元素。

From MDN

  

childNodes包括所有子节点,包括非元素节点,例如文本和注释节点。要获取仅元素的集合,请改用ParentNode.children

您也可以使用remove()代替children,这将从dom中删除当前元素。

childNodes
removeChild()

答案 1 :(得分:0)

var y = document.getElementById('parent');

y.childNodes[1].removeChild(y.childNodes[1].childNodes[5]);
<div id="parent">
  <div>
    <a href="#">First</a>
    <a href="#">second</a>
    <a href="#">third</a>
    <!--I wanna delete this-->
  </div>
</div>