JS效果日记(五)——封装函数之图片切换

JS效果日记(五)

——封装函数之图片切换

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			* {
				margin: 0;
				padding: 0;
			}

			#box {
				width: 400px;
				height: 400px;
				border: 1px solid #666666;
				background: url(img/1112.jpg);
			}

			#box ul li img {
				width: 50px;
				height: 50px;
			}

			#box ul li {
				display: inline-block;
				margin-right: 20px;
				margin-top: 350px;
			}
		</style>
	</head>
	<body>
		<div id="box">
			<ul>
				<li id="item1">
					<img src="img/1112.jpg">
				</li>
				<li id="item2">
					<img src="img/1113.jpg">
				</li>
				<li id="item3">
					<img src="img/1114.jpg">
				</li>
				<li id="item4">
					<img src="img/1115.jpg">
				</li>
				<li id="item5">
					<img src="img/1116.jpg">
				</li>
			</ul>
		</div>
		<script type="text/javascript">
			function $(id) {
				return typeof id === 'string' ? document.getElementById(id) : null;	
			}
			function changebgcImg(liId, imgSrc) {
				$(liId).onmouseover = function() {
					$('box').style.background = imgSrc;
				}
			}
			changebgcImg('item1', 'url(img/1112.jpg)');
			changebgcImg('item2', 'url(img/1113.jpg)');
			changebgcImg('item3', 'url(img/1114.jpg)');
			changebgcImg('item4', 'url(img/1115.jpg)');
			changebgcImg('item5', 'url(img/1116.jpg)');
		</script>
	</body>
</html>

新手小白
还请大佬多多指教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 很高兴为您解答。这个需要一些JavaScript知识,但是我们可以简单地使用以下代码来实现:<script>function toggleTab(tabName){ var tabs = document.querySelectorAll('.tab'); tabs.forEach(function(tab){ tab.classList.remove('active'); if (tab.dataset.tab === tabName){ tab.classList.add('active'); } }); }</script> ### 回答2: Tab切换是一种常见的网页交互效果,可以通过JavaScript封装一个Tab切换函数。以下是一个简单的实现: ```javascript function tabSwitch(tabId) { // 获取Tab切换容器 var container = document.getElementById(tabId); // 获取所有Tab标签和内容 var tabs = container.querySelectorAll('.tab'); var contents = container.querySelectorAll('.content'); // 遍历所有Tab标签 tabs.forEach(function(tab, index) { // 给Tab标签绑定点击事件 tab.addEventListener('click', function() { // 隐藏所有内容 contents.forEach(function(content) { content.style.display = 'none'; }); // 显示当前点击的标签对应的内容 contents[index].style.display = 'block'; // 切换选中的标签样式 tabs.forEach(function(t) { t.classList.remove('active'); }); tab.classList.add('active'); }); }); } ``` 使用该函数,只需要在HTML文档中添加相应的结构,并调用`tabSwitch`函数,例如: ```html <div id="tab-container"> <div class="tab active">Tab 1</div> <div class="tab">Tab 2</div> <div class="tab">Tab 3</div> <div class="content" style="display: block;">Content 1</div> <div class="content">Content 2</div> <div class="content">Content 3</div> </div> <script type="text/javascript"> tabSwitch('tab-container'); </script> ``` 这段代码会实现一个具有三个Tab标签和对应内容的切换效果。初始状态下,默认显示第一个Tab标签的内容。当点击其他Tab标签时,会切换显示相应的内容,并改变当前选中Tab标签的样式。 ### 回答3: 切换选项卡(Tab)是网页开发常用的功能之一,我们可以使用JavaScript封装一个Tab切换函数。下面是一个简单的示例: HTML结构部分: ```html <div id="tabs"> <div class="tab" onclick="changeTab(0)">选项卡1</div> <div class="tab" onclick="changeTab(1)">选项卡2</div> <div class="tab" onclick="changeTab(2)">选项卡3</div> </div> <div id="contents"> <div class="content">内容1</div> <div class="content">内容2</div> <div class="content">内容3</div> </div> ``` CSS样式部分: ```css .tab { cursor: pointer; } .content { display: none; } ``` JavaScript部分: ```javascript function changeTab(index) { var tabs = document.getElementsByClassName("tab"); var contents = document.getElementsByClassName("content"); // 先隐藏所有内容 for (var i = 0; i < contents.length; i++) { contents[i].style.display = "none"; } // 显示选中的内容 contents[index].style.display = "block"; // 可以根据需要添加一些样式修改,比如高亮当前选中的选项卡 for (var i = 0; i < tabs.length; i++) { tabs[i].classList.remove("active"); } tabs[index].classList.add("active"); } ``` 以上代码使用了事件绑定,当点击选项卡时,会调用changeTab()函数,根据传入的索引值来控制显示和隐藏选项卡的内容。我们通过修改CSS的display属性来实现切换效果。 这个函数可以根据需要进行修改和扩展,比如可以自定义样式、添加动画效果等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值