js原生操作Dom(模拟鼠标点击)

createDocumentFragment() //创建一个DOM片段
createElement() //创建一个具体的元素
createTextNode() //创建一个文本节点
添加:appendChild()
移出:removeChild()
替换:replaceChild(newNode,oldNode)
插入:insertBefore(newNode,oldNode)
复制:cloneNode(true)
查找:
getElementsByTagName() //通过标签名称
getElementsByClassName() //通过标签名称 IE8以及一下无效
getElementsByName() //通过元素的Name属性的值
getElementById() //通过元素Id,唯一性
querySelector(’.类名’) //查找符合类名的第一个
querySelectorAll(’.类名’) //查找所有符合类名 返回一个数组(就算一个也返回数组)

<body>
<button class="cli">点击</button>
<div class="zzc"></div>
</body>
<script>
var e = document.getElementsByClassName('zzc')[0]
for (let i=0;i<3;i++) {
  var div = document.createElement('div')
  randColor(div) //通过style增加样式
  div.setAttribute('class','test') //通过setAttribute加类名(缺点会替换之前的类名)
  //div.classList.add("类名") //追加类名样式
  var text = document.createTextNode('text'+i)
  div.appendChild(text)
  e.appendChild(div)
}
function randColor(element) { //随机改变背景色
    var ranColor = '#' + ('00000' + (Math.random() * 0x1000000 << 0).toString(16)).slice(-6);
    element.style.background = ranColor;
}
//点击按钮进行操作
var cli = document.querySelectorAll('.cli')[0]
cli.addEventListener('click',function(){
var e = document.querySelector('.zzc')
var one = document.querySelectorAll('.test')[1]
//创建一个元素
var div = document.createElement('div')
var text = document.createTextNode('zzzccc')
div.appendChild(text)
// e.removeChild(one)//移除指定元素
// e.appendChild(div)//在末尾插入元素
// e.replaceChild(div,one)//替换元素
// e.insertBefore(div,one)//在指定元素前面插入元素
var first = e.firstElementChild.cloneNode(true)//复制类名为zzc的第一个子元素
var last = e.lastChild.cloneNode(true)//复制类名为zzc的最后一个子元素
e.appendChild(last)
})

</script>
<style>
  .test{
    border: 1px solid skyblue;
  }
</style>

在这里插入图片描述
实际业务

//模拟鼠标点击
var mouse = document.createElement('a')
mouse.setAttribute('href','https://www.baidu.com/')
mouse.setAttribute('target','_blank')
mouse.setAttribute('download', '');//下载的文件命名
mouse.click()
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值