大家好,又见面了,我是你们的朋友全栈君。
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>首页</title>
</head>
<frameset rows="120,*" cols="*" frameborder="no" border="0" framespacing="0">
<frame src="top.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame"
title="topFrame" />
<frameset cols="120,*" frameborder="no" border="0" framespacing="0">
<frame src="left.html" name="leftFrame" scrolling="No" noresize="noresize" id="leftFrame" title="leftFrame" />
<frame src="main.html" name="mainFrame" id="mainFrame" title="mainFrame" />
</frameset>
</frameset>
<noframes><body>
</body></noframes>
</html>
left.html
重点是其中的交互问题的处理
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>我的首页</title>
<style type="text/css">
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
.dh{
margin:0;
padding:0;
list-style-type: none;
}
.dh .dh1 {
background-color: #39F;
height: 30px;
margin-bottom:1px;
font-size:18px;
text-align:center;
line-height: 30px;
overflow:hidden;
}
.dh .dh1:hover {
height:150px;
}
.dh2{
margin:0;
padding:0;
list-style-type:none;
}
.dh2 li{
height:30px;
text-align:center;
line-height:30px;
background-color: #0F9;
}
.dh2 li a {
text-decoration: none;
color: #333;
display: block;
height: 30px;
width: 110px;
}
.dh2 li:hover{
background:#FF3;
}
</style>
</head>
<body>
<table width="110" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="800" valign="top">
<ul class="dh">
<li class="dh1">正规学习
<ul class="dh2">
<li><a href="xs2.html" target="mainFrame">语文</a></li>
<li><a href="xs3.html" target="mainFrame">数学</a></li>
<li><a href="xs2.html" target="mainFrame">电子商务</a></li>
<li><a href="xs3.html" target="mainFrame">互联网</a></li>
</ul>
</li>
<li class="dh1">科幻小说
<ul class="dh2">
<li><a href="xs2.html" target="mainFrame">宇宙</a></li>
<li><a href="xs2.html" target="mainFrame">哲学</a></li>
<li><a href="xs2.html" target="mainFrame">电子商务</a></li>
<li> <a href="xs3.html" target="mainFrame">互联网</a></li>
</ul>
</li>
<li class="dh1">武侠小说
<ul class="dh2">
<li><a href="xs3.html" target="mainFrame">语文</a></li>
<li><a href="xs2.html" target="mainFrame">数学</a></li>
<li><a href="xs3.html" target="mainFrame">电子商务</a></li>
<li><a href="xs3.html" target="mainFrame">互联网</a></li>
</ul>
</li>
<li class="dh1">言情小说
<ul class="dh2">
<li><a href="xs2.html" target="mainFrame">语文</a></li>
<li><a href="xs3.html" target="mainFrame">数学</a></li>
<li><a href="xs2.html" target="mainFrame">电子商务</a></li>
<li><a href="xs3.html" target="mainFrame">互联网</a></li>
</ul>
</li>
</ul>
</td>
</tr>
</table>
</body>
</html>
top.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style type="text/css">
.bgx {
border-bottom-width: 2px;
border-bottom-style: solid;
border-bottom-color: #00F;
}
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
}
.qqxf {
font-size: 14px;
color: #666;
text-align: center;
}
.zhmm {
width: 100px;
}
.xwz {
font-size: 14px;
}
.denglu {
width: 100px;
height: 25px;
}
</style>
</head>
<body>
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="bgx">
<tr>
<td width="400" height="115" bgcolor="#BFF2FF"><img src="images/suoxiaob.png" width="364" height="72" /></td>
<td bgcolor="#BFF2FF"><table width="550" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="157"><img src="image\qq.png" width="149" height="34" /></td>
<td width="20" rowspan="2"><hr width="1" size="50" /></td>
<td width="179">账号:
<label for="bs"></label>
<input name="bs" type="text" class="zhmm" id="bs" placeholder="用户名/email"/></td>
<td width="104"><input type="checkbox" name="1" id="1" />
<label for="1" class="xwz">自动登录</label></td>
<td width="20" rowspan="2"><hr width="1" size="50" /></td>
<td width="70" class="xwz">找回密码</td>
</tr>
<tr>
<td height="30" class="qqxf">只需一步,快速开始</td>
<td>密码:
<label for="mm"></label>
<input name="mm" type="password" class="zhmm" id="mm" /></td>
<td><input name="DL" type="submit" class="denglu" id="DL" value="登录" /></td>
<td class="xwz">文友注册</td>
</tr>
</table></td>
</tr>
</table>
<div></div>
</body>
</html>
main.html
<!doctype html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>轮播图</title>
<style type="text/css">
*{ padding:0; margin:0; list-style:none; border:0;}
.all{
width:500px;
height:200px;
padding:7px;
border:1px solid #ccc;
margin:100px auto;
position:relative;
}
.screen{
width:500px;
height:200px;
overflow:hidden;
position:relative;
}
.screen li{ width:500px; height:200px; overflow:hidden; float:left;}
.screen ul{ position:absolute; left:0; top:0px; width:3000px;}
.all ol{ position:absolute; right:10px; bottom:10px; line-height:20px; text-align:center;}
.all ol li{ float:left; width:20px; height:20px; background:#fff; border:1px solid #ccc; margin-left:10px; cursor:pointer;}
.all ol li.current{ background:yellow;}
#arr {display: none;}
#arr span{ width:40px; height:40px; position:absolute; left:5px; top:50%; margin-top:-20px; background:#000; cursor:pointer; line-height:40px; text-align:center; font-weight:bold; font-family:'黑体'; font-size:30px; color:#fff; opacity:0.3; border:1px solid #fff;}
#arr #right{right:5px; left:auto;}
</style>
<script>
window.onload = function () {
//需求:无缝滚动。
//思路:赋值第一张图片放到ul的最后,然后当图片切换到第五张的时候
// 直接切换第六章,再次从第一张切换到第二张的时候先瞬间切换到
// 第一张图片,然后滑动到第二张
//步骤:
//1.获取事件源及相关元素。(老三步)
//2.复制第一张图片所在的li,添加到ul的最后面。
//3.给ol中添加li,ul中的个数-1个,并点亮第一个按钮。
//4.鼠标放到ol的li上切换图片
//5.添加定时器
//6.左右切换图片(鼠标放上去隐藏,移开显示)
var screen = document.getElementById("screen");
var ul = screen.children[0];
var ol = screen.children[1];
var div = screen.children[2];
var imgWidth = screen.offsetWidth;
//2
var tempLi = ul.children[0].cloneNode(true);
ul.appendChild(tempLi);
//3
for(var i = 0; i < ul.children.length - 1; i++) {
var newOlLi = document.createElement("li");
newOlLi.innerHTML = i + 1;
ol.appendChild(newOlLi);
}
var olLiArr = ol.children;
olLiArr[0].className = "current";
//4
for(var i = 0, len = olLiArr.length; i < len; i++) {
olLiArr[i].index = i;
olLiArr[i].onmouseover = function (ev) {
for(var j = 0; j < len; j++) {
olLiArr[j].className = "";
}
this.className = "current";
key = square = this.index;
animate(ul, -this.index * imgWidth);
}
}
//5
var key = 0;
var square = 0;
var timer = setInterval(autoPlay, 1000);
screen.onmouseover = function (ev) {
clearInterval(timer);
div.style.display = "block";
}
screen.onmouseout = function (ev) {
timer = setInterval(autoPlay, 1000);
div.style.display = "none";
}
//6
var divArr = div.children;
divArr[0].onclick = function (ev) {
key--;
if(key < 0) {
ul.style.left = -(ul.children.length-1) * imgWidth + "px";
key = 4;
}
animate(ul, -key * imgWidth);
square--;
if(square < 0) {
square = 4;
}
for(var k = 0; k < len; k++) {
olLiArr[k].className = "";
}
olLiArr[square].className = "current";
}
divArr[1].onclick = autoPlay;
function autoPlay() {
key++;
//当不满足下面的条件是时候,轮播图到了最后一个孩子,进入条件中后,瞬移到
//第一张,继续滚动。
if(key > ul.children.length - 1) {
ul.style.left = 0;
key = 1;
}
animate(ul, -key * imgWidth);
square++;
if(square > 4) {
square = 0;
}
for(var k = 0; k < len; k++) {
olLiArr[k].className = "";
}
olLiArr[square].className = "current";
}
function animate(ele,target){
clearInterval(ele.timer);
var speed = target>ele.offsetLeft?10:-10;
ele.timer = setInterval(function () {
var val = target - ele.offsetLeft;
ele.style.left = ele.offsetLeft + speed + "px";
if(Math.abs(val)<Math.abs(speed)){
ele.style.left = target + "px";
clearInterval(ele.timer);
}
},10)
}
}
</script>
</head>
<body>
<div class="all" id='all'>
<div class="screen" id="screen">
<ul id="ul">
<li><img src="images1.jpg" width="500" height="200" /></li>
<li><img src="images2.jpg" width="500" height="200" /></li>
<li><img src="images3.jpg" width="500" height="200" /></li>
<li><img src="images4.jpg" width="500" height="200" /></li>
<li><img src="images5.jpg" width="500" height="200" /></li>
</ul>
<ol>
</ol>
<div id="arr">
<span id="left"><</span>
<span id="right">></span>
</div>
</div>
</div>
</body>
</html>
效果图如下:图片没显示,是因为没放图片
转载于:https://my.oschina.net/WinkJie/blog/3057676
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/106789.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...