JavaScript语法——style.display 属性

本文详细介绍了JavaScript中style.display属性的使用方法及其各种参数的意义,包括block、none、inline等,并阐述了这些参数如何影响网页元素的显示方式。

JavaScript语法——style.display 属性
来源:转载   人气:23136   录入时间:2006-12-23


    display版本:CSS1/CSS2  兼容性:IE4+ NS4+ 继承性:无
   
   
   语法:
   
   display : block | none | inline | compact | marker | inline-table | list-item | run-in | table |table-caption | table-cell | table-column | table-column-group | table-footer-group | table-header-group | table-row | table-row-group
   
   参数:
   
   block :  CSS1 块对象的默认值。用该值为对象之后添加新行
   none :  CSS1 隐藏对象。与visibility属性的hidden值不同,其不为被隐藏的对象保留其物理空间
   inline :  CSS1 内联对象的默认值。用该值将从对象中删除行
   compact :  CSS2 分配对象为块对象或基于内容之上的内联对象
   marker :  CSS2 指定内容在容器对象之前或之后。要使用此参数,对象必须和:after及:before 伪元素一起使用
   inline-table :  CSS2 将表格显示为无前后换行的内联对象或内联容器
   list-item :  CSS1 将块对象指定为列表项目。并可以添加可选项目标志
   run-in :  CSS2 分配对象为块对象或基于内容之上的内联对象
   table :  CSS2 将对象作为块元素级的表格显示
   table-caption :  CSS2 将对象作为表格标题显示
   table-cell :  CSS2 将对象作为表格单元格显示
   table-column :  CSS2 将对象作为表格列显示
   table-column-group :  CSS2 将对象作为表格列组显示
   table-header-group :  CSS2 将对象作为表格标题组显示
   table-footer-group :  CSS2 将对象作为表格脚注组显示
   table-row :  CSS2 将对象作为表格行显示
   table-row-group :  CSS2 将对象作为表格行组显示
   
   说明:
   
   设置或检索对象是否及如何显示。
   目前 IE5.5仅支持以上CSS1的参数。
   对应的脚本特性为display。请参阅我编写的其他书目。

JavaScript语法——style.display 属性
display版本:CSS1/CSS2  兼容性:IE4+ NS4+ 继承性:无
   
   
   语法:
   
   display : block | none | inline | compact | marker | inline-table | list-item | run-in | table |table-caption | table-cell | table-column | table-column-group | table-footer-group | table-header-group | table-row | table-row-group
   
   参数:
   
   block :  CSS1 块对象的默认值。用该值为对象之后添加新行
   none :  CSS1 隐藏对象。与visibility属性的hidden值不同,其不为被隐藏的对象保留其物理空间
   inline :  CSS1 内联对象的默认值。用该值将从对象中删除行
   compact :  CSS2 分配对象为块对象或基于内容之上的内联对象
   marker :  CSS2 指定内容在容器对象之前或之后。要使用此参数,对象必须和:after及:before 伪元素一起使用
   inline-table :  CSS2 将表格显示为无前后换行的内联对象或内联容器
   list-item :  CSS1 将块对象指定为列表项目。并可以添加可选项目标志
   run-in :  CSS2 分配对象为块对象或基于内容之上的内联对象
   table :  CSS2 将对象作为块元素级的表格显示
   table-caption :  CSS2 将对象作为表格标题显示
   table-cell :  CSS2 将对象作为表格单元格显示
   table-column :  CSS2 将对象作为表格列显示
   table-column-group :  CSS2 将对象作为表格列组显示
   table-header-group :  CSS2 将对象作为表格标题组显示
   table-footer-group :  CSS2 将对象作为表格脚注组显示
   table-row :  CSS2 将对象作为表格行显示
   table-row-group :  CSS2 将对象作为表格行组显示
   
   说明:
   
   设置或检索对象是否及如何显示。
   目前 IE5.5仅支持以上CSS1的参数。
   对应的脚本特性为display。请参阅我编写的其他书目。
<div class="row m-t-5 pingwei-tag-list hide"> <div class="col-md-2"> <label class="form-label"> 评委搜索: </label> </div> <div class="col-md-10"> <div class="input-group mb-3"> <input type="text" class="form-control search-input" data-id="{$vo.id}" placeholder="请输入评委姓名..." aria-label="Search" @select="handleSelect" > <button class="btn btn-outline search-btn" type="button"> <i class="fa fa-search"></i> 搜索 </button> </div> </div> </div> <div class="row assign-select-pingwei hide"> <div class="col-md-2"> <label class="form-label"> <span class="text-danger">*</span>选择评委: </label> </div> <div class="col-md-10"> <div id="pingwei-checkbox" class="selectgroup selectgroup-pills"> {volist name='pingwei' id='vo' } <div class="custom-control custom-checkbox custom-control-inline"> <input type="checkbox" class="custom-control-input form-check-input pingwei-checkbox" id="form-pingwei[{$vo.id}]" value="{$vo.id}" name="pingwei[]"> <label class="custom-control-label" for="form-pingwei[{$vo.id}]" style="cursor: pointer;"><i class="fa fa-tags badge badge-success m-r-5 m-b-5">{$vo.realname}</i></label> <div class="invalid-feedback">请选择...</div> </div> <!-- <div class="custom-control custom-checkbox custom-control-inline pingwei-item"--> <!-- data-pingwei-id="{$vo.id}">--> <!-- <input type="checkbox" class="custom-control-input form-check-input pingwei-check-input"--> <!-- id="form-pingwei[{$vo.id}]" value="{$vo.id}" name="pingwei[]">--> <!-- <label class="custom-control-label" for="form-pingwei[{$vo.id}]" data-toggle="tooltip"--> <!-- style="cursor: pointer;" title="{$vo.realname}-{$vo.phone}">--> <!-- <i class="fa fa-user"></i>--> <!-- {$vo.realname}--> <!-- </label>--> <!-- </div>--> {/volist} </div> </div> </div> // 获取DOM元素 var searchInput = document.querySelector('.search-input'); var searchBtn = document.querySelector('.search-btn'); var pingweiItems = document.querySelectorAll('.pingwei'); // 所有评委项 // 初始化 function init() { bindEvents(); } // 事件绑定 function bindEvents() { // 输入框输入事件 searchInput.addEventListener('input', debounce(handleSearch, 200)); // 搜索按钮点击事件 searchBtn.addEventListener('click', () => handleSearch()); } // 处理搜索逻辑 function handleSearch() { const query = searchInput.value.trim().toLowerCase(); // 如果无关键词,显示所有评委并隐藏提示 if (!query) { pingweiItems.forEach(item => item.style.display = 'inline-block'); loadingTip.style.display = 'none'; emptyTip.style.display = 'none'; return; } // 显示加载状态 loadingTip.style.display = 'block'; emptyTip.style.display = 'none'; setTimeout(() => { let hasMatch = false; // 是否有匹配的评委 // 遍历评委项进行模糊匹配 pingweiItems.forEach(item => { const name = item.dataset.name.toLowerCase(); if (name.includes(query)) { item.style.display = 'inline-block'; hasMatch = true; } else { item.style.display = 'none'; } }); // 隐藏加载状态 loadingTip.style.display = 'none'; // 根据是否有匹配显示空提示 emptyTip.style.display = hasMatch ? 'none' : 'block'; }, 200); } // 启动初始化 init();
12-16
var pingwei = Array.from(document.querySelectorAll('.pingwei-item')).map(item => { var checkbox = item.querySelector('input[type="checkbox"]'); return { id: checkbox.value, realname: item.dataset.name || item.textContent.trim() }; }); console.log(pingwei); // 模糊查询函数 function searchPingwei(name) { var keyword = name?.trim().toLowerCase() || ''; if (!keyword) return pingwei; // 根据姓名模糊匹配 return pingwei.filter(item => { var itemName = item.realname?.trim().toLowerCase() || ''; return itemName.includes(keyword); }); } // 更新评委复选框显示 function updatePingweiDisplay(matchList) { var allItems = document.querySelectorAll('.pingwei-item'); var emptyTip = document.querySelector('.empty-tip') || document.createElement('div'); // 确保emptyTip存在 if (matchList.length === 0) { allItems.forEach(item => item.style.display = 'none'); emptyTip.textContent = '暂无匹配的评委'; return; } // 隐藏所有评委项 allItems.forEach(item => item.style.display = 'none'); emptyTip.textContent = ''; // 显示匹配的评委项 matchList.forEach(item => { // 修改选择器,使用data-name而不是data-pingwei-id(因为模板中使用的是data-name) var pingweiItem = document.querySelector(`.pingwei-item[data-name="${item.realname}"]`); if (pingweiItem) { pingweiItem.style.display = 'inline-block'; } }); } // 页面加载完成后绑定事件 document.addEventListener('DOMContentLoaded', function () { var searchInput = document.querySelector('.search-input'); var emptyTip = document.createElement('div'); emptyTip.className = 'empty-tip text-muted m-t-5'; document.querySelector('.assign-select-pingwei').appendChild(emptyTip); if (typeof pingwei === 'undefined') { // 获取所有项目数据 const items = []; document.querySelectorAll('.item').forEach(item => { items.push({ id: item.id, name: item.realname }); }); console.log(items); var tempPingwei = []; document.querySelectorAll('.pingwei-item').forEach(item => { var name = item.getAttribute('pingwei-realname'); if (name) tempPingwei.push({id: item.querySelector('.pingwei-checkbox').value, realname: name}); }); if (tempPingwei.length > 0) pingwei = tempPingwei; } // 搜索处理函数 var handleSearch = function () { const keyword = searchInput.value; const matchPingwei = searchPingwei(keyword); updatePingweiDisplay(matchPingwei); }; // 输入框实时搜索 let searchTimeout; searchInput.addEventListener('input', function () { clearTimeout(searchTimeout); searchTimeout = setTimeout(handleSearch, 300); }); // 初始显示所有评委 updatePingweiDisplay(pingwei); });
最新发布
12-16
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值