首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在选项卡和onFocus上显示div并在onBlur上隐藏

,可以通过以下步骤实现:

  1. 首先,创建一个包含选项卡和div的HTML结构。选项卡可以使用<ul>和<li>元素来创建,每个选项卡对应一个<div>元素。
代码语言:txt
复制
<ul>
  <li id="tab1">选项卡1</li>
  <li id="tab2">选项卡2</li>
  <li id="tab3">选项卡3</li>
</ul>

<div id="content1">内容1</div>
<div id="content2">内容2</div>
<div id="content3">内容3</div>
  1. 使用CSS隐藏所有的<div>元素,只显示默认的<div>元素(例如,content1)。
代码语言:txt
复制
#content1, #content2, #content3 {
  display: none;
}

#content1.default {
  display: block;
}
  1. 使用JavaScript添加事件监听器,以在选项卡点击和焦点事件上显示和隐藏<div>元素。
代码语言:txt
复制
// 获取选项卡和内容的元素
var tabs = document.querySelectorAll('li');
var contents = document.querySelectorAll('div');

// 为选项卡添加点击事件监听器
tabs.forEach(function(tab) {
  tab.addEventListener('click', function() {
    // 隐藏所有的内容
    contents.forEach(function(content) {
      content.style.display = 'none';
    });

    // 显示对应的内容
    var contentId = this.id.replace('tab', 'content');
    document.getElementById(contentId).style.display = 'block';
  });
});

// 为选项卡添加焦点事件监听器
tabs.forEach(function(tab) {
  tab.addEventListener('focus', function() {
    // 隐藏所有的内容
    contents.forEach(function(content) {
      content.style.display = 'none';
    });

    // 显示对应的内容
    var contentId = this.id.replace('tab', 'content');
    document.getElementById(contentId).style.display = 'block';
  });
});

// 为选项卡添加失焦事件监听器
tabs.forEach(function(tab) {
  tab.addEventListener('blur', function() {
    // 隐藏所有的内容
    contents.forEach(function(content) {
      content.style.display = 'none';
    });
  });
});

这样,当用户点击选项卡或将焦点放在选项卡上时,对应的<div>元素将显示出来;当用户将焦点从选项卡移开时,<div>元素将隐藏起来。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

vue封装带提示框的单选多选文本框组件

提示框显示隐藏交互实现 细化上述需求,需要在用户点击输入框(获取焦点)时,显示提示框,在用户点击空白区域时隐藏提示框,点击组件自身时不做任何操作。...组件的模板结构如下,通过show变量控制提示框的显示隐藏组件的输入框绑定聚焦失焦事件: @focus="onfocus" @blur="onblur",focus时设置变量show为true...-- 输入框 --> <el-input @focus="<em>onfocus</em> @blur="onblur> <!...3.4 尝试方案4: onfocus + onblur + mousedown + 开关 由于focus事件先于click事件执行,导致了上述方案1方案2问题的产生,如果能够解决这两个事件的执行时序问题...此外,组件还有不少可以改进的地方,例如: 目前的提示框的显示隐藏是通过监听mousedown等事件,很明显不能兼容移动端,可以考虑添加touch相关事件; css布局方面没有判断用户可见的友好性,极端情况下可能会超出屏幕范围

7.7K30

vue封装带提示框的单选多选文本框组件

提示框显示隐藏交互实现 细化上述需求,需要在用户点击输入框(获取焦点)时,显示提示框,在用户点击空白区域时隐藏提示框,点击组件自身时不做任何操作。...组件的模板结构如下,通过show变量控制提示框的显示隐藏组件的输入框绑定聚焦失焦事件: @focus="onfocus" @blur="onblur",focus时设置变量show为true...-- 输入框 --> <el-input @focus="<em>onfocus</em> @blur="onblur> <!...3.4 尝试方案4: onfocus + onblur + mousedown + 开关 由于focus事件先于click事件执行,导致了上述方案1方案2问题的产生,如果能够解决这两个事件的执行时序问题...[50u2p96tgj.png] 此外,组件还有不少可以改进的地方,例如: 目前的提示框的显示隐藏是通过监听mousedown等事件,很明显不能兼容移动端,可以考虑添加touch相关事件; css

5.3K403

如何利用PythonJetson TX2抓取显示摄像头影像

本贴中,贴主“我”分享了如何使用python 代码(及 OpenCV)Jetson TX2抓取显示摄像头影像,包括IP摄像头, USB 网络摄像头Jetson板载摄像头.这个简单代码也同样可以...Jetson TX1运行。...1 准备工作 需要在Jetson TX2安装 GStreamer 支持的 pythonOpenCV.。我是安装opencv-3.3.0 python3....源代码 (因为顾虑到很多人访问不了,lady把代码copy到这里:http://www.jetsoner.com/thread-148-1-1.html) 按照下面步骤利用Jetson板载摄像头抓取显示影像...(我还连接了一个更快的r - cnn模型来做人类头部检测,并在捕获图像绘制边框,但是主视频捕获/显示代码是相同的。) ? (点击阅读原文看代码吧...微信排版太麻烦了...lady真是已经尽力了)

2.5K120
领券