面向对象2-用箭头函数实现选项卡的demo

这段代码展示了如何使用JavaScript动态创建一个包含`<ul>`和`<ol>`元素的选项卡结构,并在鼠标悬停事件上设置响应,使得当鼠标悬停在某个选项上时,对应的选项卡和列表项会高亮显示。该实现利用了箭头函数和DOM操作,适用于前端页面交互的场景。
摘要由CSDN通过智能技术生成
class createTab {
    constructor(element, arr) {
        this.ele = element;
        this.arr = arr;
        this.oulListr;
        this.oOlListr;
    }
    // 创建函数动态生成页面
    setPage() {
        let oUl = document.createElement('ul');
        let oOl = document.createElement('ol');
        let oUlLis = '';
        let oOlLis = '';
        this.arr.forEach(function (item, key) {
            oUlLis += key === 0 ? `<li class="active" index=${key} name="ulli">${item.ulLi}</li>` : `<li index="${key}" name="ulli">${item.ulLi}</li>`;
            oOlLis += key === 0 ? `<li class="active">${item.olLi}</li>` : `<li>${item.olLi}</li>`
        })
        oUl.innerHTML = oUlLis;
        oOl.innerHTML = oOlLis;
        this.ele.appendChild(oUl);
        this.ele.appendChild(oOl);
        this.oulListr = oUl.querySelectorAll('li');
        this.oOlListr = oOl.querySelectorAll('li');
    }
    setEvent(event = 'mouseover') {
 
        this.ele.addEventListener(event,(e)=> {
            if(e.target.getAttribute('name')==='ulli'){
                this.oulListr.forEach((item,key)=>{
                  item.classList.remove('active');
                  this.oOlListr[key].classList.remove('active');
                })
                e.target.classList.add('active');
                this.oOlListr[Number(e.target.getAttribute('index'))].classList.add('active');
            }
         })
    }
}

这部分是用箭头函数实现选项卡为外部引入的js部分

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值