2017-3-30 Js实现导航栏,选项卡,图片轮播的制作

(一)导航栏的制作

显示的效果:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <style type="text/css">
        .div1 {
            width: 100px;
            height: 30px;
            background-color: red;
            float: left;
            margin-right: 10px;
            position: relative;
        }

        .div2 {
            width: 100px;
            height: 230px;
            background-color: yellow;
            float: left;
            margin-right: 10px;
            position: absolute;
            top: 30px;
            display: none;
        }
    </style>
</head>
<body>
    <div class="div1" id="div_1">
        <div class="div2">
        </div>
    </div>
    <div class="div1" id="div_2">
        <div class="div2">
        </div>
    </div>
    <div class="div1" id="div_3">
        <div class="div2">
        </div>
    </div>
    <div class="div1" id="div_4">
        <div class="div2">
        </div>
    </div>
    <div class="div1" id="div_5">
        <div class="div2">
        </div>
    </div>

</body>
</html>
<script type="text/javascript">
    var a = document.getElementsByClassName(‘div1‘);
    var b = document.getElementsByClassName(‘div2‘);
    for (var i = 0; i < a.length; i++) {
        //鼠标移入
        a[i].index = i;//记录一个int类型的值,使div1和div2对应起来鼠标移入移除的时候显示相应的下拉菜单
        a[i].onmouseover = function () {
            a[this.index].style.backgroundColor = ‘black‘;//鼠标移入的时候div1变色
            b[this.index].style.display = ‘block‘;
        }

        //鼠标移除
        a[i].onmouseout = function () {
            a[this.index].style.backgroundColor = ‘red‘;//鼠标移除的时候div1恢复原来的颜色
            b[this.index].style.display = ‘none‘;
        }
    }
</script>

(二)选项卡的制作

  点击导航栏,div中的内容发生变化,变化用数字代替

  css样式:

.div1 {
    width:100px;
    height:30px;
    float:left;
    margin-right:10px;
    background-color:red;
}
.div2 {
    top:40px;
    background-color:blue;
    width:540px;
    height:300px;
    position:absolute;
    z-index:100;
}

  js代码div内容:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <link href="Css/Css3.css" rel="stylesheet" />
</head>
<body>
    <div class="div1" id="d1"></div>
    <div class="div1" id="d2"></div>
    <div class="div1" id="d3"></div>
    <div class="div1" id="d4"></div>
    <div class="div1" id="d5"></div>
    <div class="div2" id="da" style="z-index:101;">111</div>
    <div class="div2" id="db">222</div>
    <div class="div2" id="dc">333</div>
    <div class="div2" id="de">444</div>
    <div class="div2" id="df">555</div>
</body>
</html>
<script type="text/javascript">
    var a = document.getElementsByClassName(‘div1‘);
    var b = document.getElementsByClassName(‘div2‘);
    var count = 102;
    for (var i = 0; i < a.length; i++) {

        //鼠标移入
        a[i].onmouseover = function () {

            if (this.style.backgroundColor != ‘black‘) {//鼠标移入的时候只要不是黑色都变成黄色
                this.style.backgroundColor = ‘yellow‘;
            }

        }
        //鼠标移出
        a[i].onmouseout = function () {
            if (this.style.backgroundColor == ‘yellow‘) {
                this.style.backgroundColor = ‘red‘;
            }
        }
        //鼠标点击
        a[i].index = i;//用于计数比较的一定要放在点击事件的外面
        a[i].onclick = function () {

            for (var j = 0; j < a.length;j++){
                a[j].style.backgroundColor = ‘red‘;
            }
            this.style.backgroundColor = ‘black‘;

            //选项卡切换
            b[this.index].style.zIndex = count;
            count++;

        }

    }
</script>

(三)图片轮播

  显示效果:

  

  css样式表:

  

.div1 {
   width:730px;
   height:336px;
   position:relative;
   background-color:red;
}
    .div1 img {
        width:100%;
        height:100%;
        position:absolute;
        display:none;
    }
.but {
    width:40px;
    height:50px;
    background-color:#808080;
    z-index:1000;
    position:absolute;
    top:50%;
    margin-top:-25px;
    font-size:30px;
    line-height:50px;
    font-weight:bold;
    text-align:center;
    cursor:pointer;

}

  js和内容:

  

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <link href="Css/Css4.css" rel="stylesheet" />
</head>
<body>
    <div class="div1" id="da">
        <img class="img" src="images/1_1.jpg" style="display:block"/>
        <img class="img" src="images/1_2.jpg" />
        <img class="img" src="images/1_3.jpg" />
        <img class="img" src="images/1_4.jpg" />
        <img class="img" src="images/1_5.jpg" />
        <img class="img" src="images/1_6.jpg" />

        <div class="but" id="but_left"><</div>
        <div class="but" id="but_right" style="right:0px;">></div>
    </div>
</body>
</html>
<script type="text/javascript">
    var images = document.getElementsByClassName(‘img‘);
    var count = 0;

        //左滑动事件
        document.getElementById(‘but_left‘).onclick = function () {
            for (var i = 0; i < images.length; i++) {
                images[i].style.display = ‘none‘;
            }
            count--;
            if (count <0) {
                count = images.length - 1;
            }
            images[count].style.display = ‘block‘;
        }

        //右滑动事件
        document.getElementById(‘but_right‘).onclick = function () {
            for (var i = 0; i < images.length;i++){
                images[i].style.display = ‘none‘;
            }
            count++;
            if (count > (images.length - 1)) {
                count = 0;
            }
            images[count].style.display = ‘block‘;

        }

</script>
时间: 2024-10-09 21:35:32

2017-3-30 Js实现导航栏,选项卡,图片轮播的制作的相关文章

js实现淘宝首页图片轮播效果

原文:http://ce.sysu.edu.cn/hope2008/Education/ShowArticle.asp?ArticleID=10585 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>淘宝首页图片轮播效果</title> <style> <!-- * {margin: 0;padding:0;} body

习题 导航栏 选项卡 图片左右切换

导航栏 1.函数 字符串函数 var s=new string(); var ss="hello world"; var sss=""HELLO, WORLD"; alert(ss.toLowerCase());--转换成小写 alert(sss.toUpperCase());--转换成大写 alert(ss.substr(2,3));--截取字符串,从索引2开始,截取3个字符长度,不写后面的数字是截到最后 alert(ss.substring(2,3))

Js效果:图片轮播;选项卡;侧面菜单下拉效果;进度条效果;滑动效果;好友列表选中效果;点击选中显示效果

选项卡效果表: <body><div id="aaa"> <div class="bbb" style="width:50px; height:30px; background-color:#3F0" onclick="Show('d1')">娱乐</div> <div class="bbb" style="width:50px; height

基于面向对象的图片轮播(js原生代码)

无论你想走多远,你都需要不断地走下去.前端最精华的便是原生的js,这也是我们前端工程师的技术分层的重要指标,也提现这你的代码能力,开发的水平.废话不多说,进入今天的主要分享----基于面向对象思想的图片轮播.其效果如下所示: 正如图片所示这样我们要实现的效果,这里与我们以往不同的是我们的布局十分简洁.其中html布局如下: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset

图片轮播(左右切换)--js原生和jquery实现

图片轮播(左右切换)--js原生和jquery实现 左右切换的做法基本步骤跟 上一篇文章  淡入淡出 类似,只不过修改了一些特定的部分 (1)首先是页面的结构部分 对于我这种左右切换式 1.首先是个外围部分(其实也就是最外边的整体wrapper) 2.接着就是你设置图片轮播的地方(也就是一个banner吧) 3.然后是一个图片组(可以用新的div 也可以直接使用 ul-->li形式) 4.然后是图片两端的左箭头和右箭头5.然后是一个透明背景层,放在图片底部 6.然后是一个图片描述info层,放在

js/jquery中实现图片轮播

一,jquery方法 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>图片轮播 jq(左右切换)</title> <style type="text/css">   body,div,ul,li,a,

使用JS实现图片轮播(前后首尾相接)

最近各种跑面试,终于还是被问到这个,一脑子浆糊,当时没想出来首尾相接怎么搞,回来之后研究了一波,终于搞出来了,不多说,直接看代码 代码参考了一位已经写好了图片轮播功能的(再次表示感谢),但是没有首尾相接的功能,本人在此基础上增加了首尾相接功能. 效果如下: 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tra

原生js和jquery实现图片轮播

(1)首先是页面的结构部分 对于我这种左右切换式 1.首先是个外围部分(其实也就是最外边的整体wrapper) 2.接着就是你设置图片轮播的地方(也就是一个banner吧) 3.然后是一个图片组(可以用新的div 也可以直接使用 ul-->li形式) 4.然后是图片两端的左箭头和右箭头5.然后是一个透明背景层,放在图片底部 6.然后是一个图片描述info层,放在透明背景层的左下角(div 或 ul-->li) 7.然后是一个按钮层,用来定位图片组的index吧,放在透明背景层的右下角(div

原生js和jquery实现图片轮播特效

(1)首先是页面的结构部分 对于我这种左右切换式 1.首先是个外围部分(其实也就是最外边的整体wrapper) 2.接着就是你设置图片轮播的地方(也就是一个banner吧) 3.然后是一个图片组(可以用新的div 也可以直接使用 ul-->li形式) 4.然后是图片两端的左箭头和右箭头5.然后是一个透明背景层,放在图片底部 6.然后是一个图片描述info层,放在透明背景层的左下角(div 或 ul-->li) 7.然后是一个按钮层,用来定位图片组的index吧,放在透明背景层的右下角(div