`
除却巫山不是云
  • 浏览: 14643 次
  • 性别: Icon_minigender_1
  • 来自: 嘉兴
社区版块
存档分类

js 带图标的导航栏 原生

阅读更多

HTML代码

<ul id="nav" class="nav">
	<li id='0'>
		<div><img src="img/08.jpg" /></div>
		<p>文字</p>
	</li>
	<li id='1'>
		<div><img src="img/09.jpg" /></div>
		<p>文字</p>
	</li>
	<li id='2'>
		<div><img src="img/10.jpg" /></div>
		<p>文字</p>
	</li>
	<li id='3'>
		<div><img src="img/11.jpg" /></div>
		<p>文字</p>
	</li>
	<li id='4'>
		<div><img src="img/12.jpg" /></div>
		<p>文字</p>
	</li>
	<li id='5'>
		<div><img src="img/13.jpg" /></div>
		<p>文字</p>
	</li>
</ul>

 CSS代码

.nav ul{
	width: 714px;
	height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0px;
	margin-top: 30px;
}
.nav ul li{
	list-style-type: none;
	width: 119px;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	border-bottom: 2px solid #000000;
	font-size: 12px;
	color: #777777;
	cursor:pointer;
}
.nav ul li div{
	width: 40px;
	height:40px;
	display: flex;
	justify-content: center;
	align-items: center;
}

 JS代码:

var li = document.getElementById("nav").getElementsByTagName('li');
var imageUrls=['img/08.jpg','img/09.jpg','img/10.jpg','img/11.jpg','img/12.jpg','img/13.jpg'];
var imageUrlsActive=['img/08-1.jpg','img/09-1.jpg','img/10-1.jpg','img/11-1.jpg','img/12-1.jpg','img/13-1.jpg'];
var color = '#777777';
var colorActive = '#D19A48';
console.log(imageUrls[0])
li[0].getElementsByTagName('img')[0].src = imageUrlsActive[0];
li[0].getElementsByTagName('p')[0].style.color = colorActive;
li[0].style.borderBottom = '2px solid '+colorActive;

for(var i=0;i<li.length;i++){
	li[i].onclick=function(){
		var img = document.getElementById("nav").getElementsByTagName('img');
		for(var j=0;j<li.length;j++){
				li[j].getElementsByTagName('img')[0].src = imageUrls[j];
				li[j].getElementsByTagName('p')[0].style.color = color;
				li[j].style.borderBottom = '2px solid '+color;
		}
		var imgUrl = this.getElementsByTagName('img')[0].src.split('/');
		var imgUrl = imgUrl[imgUrl.length-1];
		console.log(imgUrl)
		var imgUrl = imgUrl.split('.');
		console.log(imgUrl)
		console.log(imgUrl[0]+'-1.'+imgUrl[1])
		this.getElementsByTagName('img')[0].src = imageUrlsActive[parseInt(this.id)]
		this.getElementsByTagName('p')[0].style.color = colorActive;
		this.style.borderBottom = '2px solid '+colorActive;
	}
}

 

分享到:
评论

相关推荐

    微信小程序自定义底部导航栏原生语法

    下面将详细介绍如何使用JavaScript开发微信小程序中的自定义底部导航栏。 1. **原生导航栏的设置** 微信小程序中的底部导航栏可以通过`app.json`全局配置或`page.json`局部配置进行设置。原生语法则需要开发者通过...

    CSS3 SVG手机移动端底部图标导航栏特效

    在本文中,我们将深入探讨如何使用CSS3和SVG技术创建一款创新的手机移动端底部图标导航栏特效。这种特效允许用户通过点击加号图标展开或收起更多的导航选项,为移动应用或网站提供更加互动和直观的用户体验。 首先...

    一个漂亮的侧面导航栏

    在IT界,设计一个美观且实用的导航栏是构建用户友好型网站的关键步骤之一。"一个漂亮的侧面导航栏"这个项目显然关注的是如何创建这样一个功能强大的界面元素,它能够随着用户的交互提供良好的导航体验。侧面导航栏在...

    JavaScript实现滑动导航栏效果

    在介绍如何使用JavaScript实现滑动导航栏效果之前,先来看一看导航栏在网页设计中的作用。导航栏是一个网站不可或缺的组成部分,它能够帮助用户快速定位和访问网站的各个部分。然而,随着移动设备的普及,以及屏幕...

    MUI 使用原生底部栏(中间凸起图片)

    这些子元素可以是a标签,带有相应的链接和图标。 2. **使用MUI的预定义样式**:MUI提供了现成的底部栏样式,可以直接应用于你的HTML结构。例如,你可以使用`.mui-bar-tab`类为底部栏添加基础样式,`.mui-icon`和`....

    Node.js-用于ReactNative应用程序的原生导航库

    本文将深入探讨“Node.js-用于ReactNative应用程序的原生导航库”,以及如何利用它来优化你的Android应用的导航条。 首先,我们来理解一下React Native。React Native是由Facebook开发的一个开源框架,允许开发者...

    仿阿里云导航条下拉菜单js特效

    `images`文件夹可能存储了导航条中所需的背景图片或者图标,以增强视觉效果。`js`文件夹中的JavaScript代码则是实现交互功能的关键,它控制着鼠标悬停时下拉菜单的显示和隐藏。 下拉菜单的实现主要涉及到HTML的`...

    酷炫的导航栏

    1. **伪类和伪元素**:CSS3引入了更多的伪类(如`:hover`, `:active`, `:focus`)和伪元素(如`::before`, `::after`),可以用来为导航栏的各个状态添加独特样式,如悬停时背景色变化、箭头图标等。 2. **过渡效果...

    Node.js-极其简便的快速实现隐藏标题栏和导航栏

    标题 "Node.js-极其简便的快速实现隐藏标题栏和导航栏" 暗示了我们主要探讨的是在Node.js环境中,如何实现一个特定的UI交互功能,即在滚动时动态隐藏和显示标题栏及导航栏。尽管这个标题可能与Android开发相关,但...

    Node.js-按照谷歌MaterialDesign规范完成的底部导航栏控件

    【标题】:Node.js-按照谷歌MaterialDesign规范完成的底部导航栏控件 【描述】:PagerBottomTabStrip是一个遵循谷歌Material Design设计指南的Android应用底部导航栏组件。这个控件旨在提供一种用户友好的方式,使...

    ApiCloud 顶部导航栏+底部导航 完美代码

    首先,`NVNavigationBar`和`NVTabBar`是APICloud提供的特定模块,用于构建iOS和Android平台上原生的导航栏和标签栏。它们能够提供与原生应用相似的用户体验,同时具有高度的定制性和灵活性。 **NVNavigationBar**:...

    mPass 定制某一个页面导航栏样式(页面加载后).zip

    - 如果导航栏包含图标,可以利用`background-image`或`content`属性配合`::before`或`::after`伪元素来设定图标样式。 - 考虑到响应式设计,可能还需要用到媒体查询(`@media`)来适应不同屏幕尺寸。 2. **...

    Flutter中的动画曲线导航栏

    这个组件允许开发者自定义导航栏的形状、颜色、按钮图标以及过渡动画。`CurvedNavigationBar`的主要属性包括: 1. **items**: 这是一个`Widget`列表,定义了导航栏上的每个按钮。通常这些按钮是`IconButton`或...

    react-native-vector-icons,React Native可自定义图标,支持导航栏/选项卡栏/工具栏Android、图像源和完整样式。.zip

    这个库使得在React Native应用中集成图标变得简单且高效,无论是用于导航栏、选项卡栏、工具栏,还是作为按钮或徽标的图像源,都能轻松实现。其核心优势在于它支持Android和iOS平台,确保了跨平台应用的一致性。 ...

    easyUI系列图标大全

    在实际应用中,开发者可以通过简单的CSS类名或者JavaScript API来引用这些图标,轻松地将它们集成到EasyUI的组件中,比如按钮、菜单、工具栏等。这种方便的集成方式降低了开发成本,提高了开发效率。 总之,"easyUI...

    Photon使用HTMLCSS和JS为Electron开发原生UI界面

    - **导航(Navigation)**:包含侧边栏、顶部栏、面包屑导航等,用于指导用户在应用中导航。 - **对话框(Dialogs)**:如警告对话框、确认对话框,用于获取用户确认或提供额外信息。 5. **集成与应用开发流程** ...

    几个JS的日期控件标签各式弹窗和导航条

    在JavaScript的世界里,日期控件、导航条以及各种弹窗是网页交互中不可或缺的元素,它们极大地提升了用户体验。本文将深入探讨这些主题,并提供相关的实现方法。 首先,我们来看看JavaScript的日期控件。在Web应用...

    仿QQ空间底部导航栏动画效果

    用户点击图标时,页面会平滑过渡到对应的内容区域,同时导航栏中的其他图标也会有相应的视觉反馈,比如淡入淡出、缩放或滑动等动画效果,以增强用户体验。 实现QQ空间底部导航栏动画效果,可以采用以下技术: 1. *...

    使用APICloud从0开始写脉脉(二) 底部导航栏

    【使用APICloud从0开始写脉脉(二) 底部导航栏】的知识点解析: 1. **底部导航栏设计**: - 底部导航栏是移动应用中的常见组件,通常包含多个可点击的按钮,用于快速切换不同的功能模块。 - 脉脉的底部导航栏具有...

    三种样式固定导航栏随着页面滚动而滚动.zip

    5. **图片资源(img)**:`img`目录可能包含了一些与导航栏相关的图形资源,如背景图片、图标等,它们可以通过CSS引入,增强导航栏的视觉效果。 6. **响应式设计**:考虑到现代网页设计对不同设备的兼容性,这些...

Global site tag (gtag.js) - Google Analytics