当前位置: 首页 > 网络应用技术

JavaScript对象 - 面向删除选项卡页面特定代码演示示例

时间:2023-03-08 00:33:58 网络应用技术

  单击小标签右上角的按钮以删除标签。开发想法是将事件绑定为“ X”元素。触发事件后,通过父元件1i获取电缆引用值,然后使用此索引值删除相应的LI和部分,并在删除删除效果后更新选项卡。

  让我们开始编写代码。

  (1)在udeatNode()方法中获取所有“ x”元素,特定代码如下。

  (2)在init()方法的for循环中,单击事件绑定到每个“ x”元素。

  在上面的代码中,第四代码传递到removetab0方法,以触发对象和事件对象E到事件对象。

  (3)编写removetab0事件以实现标签的删除。特定代码如下。

  removetab(el,e){

  e。stoppropagation();//防止冒泡并防止LI的点击事件切换页面。

  var index = el.parentnode。指数;//获取父元素的索引

  this.lis [索引]。消除 ();

  这。[index] .remove();

  this.init();}在上面的代码中,因为“ x”元素是小标签li元素的子元素,当单击“ x”时,它会引起冒泡,从而导致li clice click click ocking everts soyou需要阻止事件通过第二行代码冒泡。

  (4)删除LI和部分元素后,需要选项卡的选择状态。有两种情况。一种是删除当前显示的选项卡页面。删除后,将上一个选项卡页面设置为选定的状态;

  另一种情况是删除尚未打开的标签。目前,原始选择状态应保持不变。

  为了区分这两个状态,在删除选项卡页面后,确定当前是否有一个打开的选项卡页面。如果不存在,则意味着打开打开的选项卡已打开。状态足够,特定代码如下:

  removetab(el,e){

  ....(原始代码)

  if(!this。Main。QuerySelector('。liactive')){this.lis [index -1] && this。lis [index-] .click();

  }

  }在上面的代码中,第三个代码用于确定是否存在主要元素中的选项卡。如果不是,则将执行IF中的代码。

  第四代码用于将上一个选项卡页面设置为选定状态。设置之前,请确定是否有一个选项卡页面可以避免所有关闭时的程序错误。

  (5)通过浏览器访问测试,观察是否已实现标签页的功能。