Day4-----subnavMeau

//--------------------使用多层嵌套完成对不同级的控制最终实现二级菜单                                                          /*HTML中标签没有完全放置,后面5项list没有放置*/<html>
<head><title>subnavMeau</title></head>
<style type="text/css">
    body,li,div,ul{margin: 0px;padding: 0px;}
    li{list-style: none;}
    body{font-size: 20px;font-weight: bold;text-align: center;}
    #nav li{float: left;width: 200px;background: url("pic/navBg.png");}
    .clear{clear: both;float: none;}
    #subMeau div{float: left;width: 200px;}
    .subnav{visibility: hidden;background: url("pic/subNav.png");}
    li div{float: left;background-image: "pic/navBg.png"}
    .options{background: gray;position: absolute;width: 100px;background: url("pic/list.png");}
</style>
<script type="text/javascript">
    window.onload=function(){
        var i;
        var oLi=document.getElementsByTagName(‘li‘);
        var oSub=document.getElementsByClassName(‘subnav‘);
        var oList=document.getElementsByClassName(‘list‘);
        oOption=document.getElementsByClassName(‘options‘);
        var Timer=new Array(oOption.length);
        for(i=0;i<3;i++){
            oLi[i].index=i;
            oSub[i].style.visibility=‘hidden‘;
            oLi[i].onclick=function(){
                value=oSub[this.index].style.visibility;
                for(i=0;i<3;i++){
                    oSub[i].style.visibility=‘hidden‘;
                }
                if(value=="hidden"){
                    oSub[this.index].style.visibility=‘visible‘;
                }
                if(value=="visible"){
                    oSub[this.index].style.visibility=‘hidden‘;
                }
            }
        }
        for(i=0;i<oOption.length;i++){
            oList[i].index=i;
            oOption[i].index=i;
            oOption[i].style.display="none";
            oList[i].onmouseover=function(){
                oOption[this.index].style.display="block";
                offset=this.index%4;
                oOption[this.index].style.left=Math.floor(this.index/4)*200+150+‘px‘;
                oOption[this.index].style.top=offset*17+23+‘px‘;
            }
            oOption[i].onmouseout=oList[i].onmouseout=function(){
                mid=this.index;
                Timer[mid]=setTimeout(function(){
                    oOption[mid].style.display="none";
                },5);
            }
            oOption[i].onmouseover=function(){
                clearTimeout(Timer[this.index]);
            }
        }
    }
</script>
<body>
    <div id="nav">
        <ul>
            <li>IOS</li>
            <li>Andriod</li>
            <li>Windows</li>
        </ul>
    </div>
    <div class="clear"> </div>
    <div id="subMeau">
        <div class="subnav">
            <ul >
                <li class="list">iMac</li>
                <div class="options">
                    <ul>
                        <li>Mac</li>
                        <li>Macmini</li>
                        <li>MacPro</li>
                    </ul>
                </div>
                <li class="list">iTouch</li>
                <div class="options">
                    <ul>
                        <li>Touch</li>
                        <li>Touchmini</li>
                        <li>TouchPro</li>
                    </ul>
                </div>
                <li class="list">iPhone</li>
                <div class="options">
                    <ul>
                        <li>Phone5</li>
                        <li>Phone6</li>
                        <li>Phone6plus</li>
                    </ul>
                </div>
                <li class="list">iWatch</li>
                <div class="options">
                    <ul>
                        <li>Mac</li>
                        <li>Macmini</li>
                        <li>MacPro</li>
                    </ul>
                </div>
            </ul>
        </div>

        <div  class="subnav" >
            <ul>
                <li class="list">sunsung</li>
                <li class="list">HTC</li>
                <li class="list">ZTE</li>
                <li class="list">Huawei</li>
            </ul>
        </div>
        <div class="subnav" id="tes">
            <ul>
                <li class="list">WindowsPhone</li>
                <li class="list">Windows7</li>
                <li class="list">Vista</li>
                <li class="list">WindowsXP</li>
            </ul>
        </div>

    </div>

    <div class="options">
        <ul>
            <li>Mac1</li>
            <li>Macmini</li>
            <li>MacPro</li>
        </ul>
    </div>
    <div class="options">
        <ul>
            <li>Mac2</li>
            <li>Macmini</li>
            <li>MacPro</li>
        </ul>
    </div>
    <div class="options">
        <ul>
            <li>Mac3</li>
            <li>Macmini</li>
            <li>MacPro</li>
        </ul>
    </div>
</html>
时间: 2024-10-05 16:38:25

Day4-----subnavMeau的相关文章

day4

day4: 经过一天的考试与测评,我发现自己在审题和考虑情况方面有很大的不足,以后要留意不同数据出现时发生的所有情况,不要遗漏数据输出时使用的库. #include〈iostream〉 using namespace std: int main() { int n,m; cin>>m>>n; for(int i=1;i<=m;i++) { for(int j=1;j<n;j++) cout<<'*'<<' '; cout<<'*'&l

leetcode day4 -- Binary Tree Postorder(Preorder) Traversal &amp;&amp; Edit Distance

 1.Binary Tree Postorder Traversal Given a binary tree, return the postorder traversal of its nodes' values. For example: Given binary tree {1,#,2,3}, 1 2 / 3 return [3,2,1]. Note: Recursive solution is trivial, could you do it iteratively? 分析:后续遍历

day4 迭代器与生成器解析

一.迭代器 迭代器是访问集合元素的一种方式.其实迭代器就是一种列表,只是访问集合元素的时候比较特殊,具有一些特定功能,记忆功能,能够记住用户上一次的状态.迭代器是访问集合元素的一种方式.并且,迭代器只能前进,不能后退.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束. 特定: (1).访问者不需要关心迭代器内部的文件,仅需通过next()方法不断去取下一个内容: (2).不能随机访问集合中的某个值,只能从头到尾依次访问: (3).访问到一半时不能往回退: (4).便于循环比较大的

Day4:T1小技巧(类似于指针操作)T2搜索+小细节

Day4:其中有很多小技巧get T1 一直没有听到过像这样的小技巧的略专业名词,有点类似于指针操作,之前有碰到过很多这样的题目 每次都是以不同的形式出现,但是感觉思想还是有点接近的吧(就比如某天有一题happy,貌似也是这类型的) 这类题目第一眼总是看起来特别的不能写,其实想到了这些技巧之后很简单 感觉这也没有什么规律性或是模板可言 大概的,就是指针思想+平时积累吧 说说这一题吧 在分析正解之前,我们先说一说比较容易想到的骗分方法 设男女人数相同时ans=0,如果下一个是男->ans++,el

雅礼集训——day3、day4

day3: 上午考试就拿了10分... T1写了个N^3的暴力,然后就拿了10分...正解是要二分时间然后找到前m个脚,然后用二分套二分求第k大.... T2看了半天感觉并不可做...然后正解居然要用斐波拉契数列的通项来求解.... T3求最小生成树的个数,我以为这道题还是可以拿50分的,然后就没有然后了.推了2小时的样例然后强行把自己劝退了...正解是要用字母树+贪心... 要学的东西又多了好多,压力好大... 下午讲的字符串算法,最后的那个回文树不是很明白...这两天得学一下字符串算法 da

python_way,day4

python_way,day4 1.内置函数 - 下 2.装饰器 1.内置函数 - 下 1 callable() #对象能否被调用 2 chr() #10进制数字对应的ascii码表中的内容 3 ord() #查询对应的ascii码表中的元素的位置 chr(65) A ord(A) 65 使用random这个模块和chr()写一个生成验证码的功能. import random li = [] def num(): """ 生成一个随机的元素,这个元素可能是大写字母,小写字母还

常州Day4题解

1. 高精度 这题略水,字符串可过,还不加压位等,操作只有BitShift和add/sub,不过编程复杂度有些高.(输出都是二进制我能说些什么...) 2. N皇后问题 (警告! 不是平时你见到的N皇后问题...是一道Hash的模拟题,N皇后的位置都给你了,就是统计) 二级标题很详细了,搜索那些解N皇后问题的千万莫戳进来. 3. Sam数 一道比较有意思的题. 题意是,给定一个k,求所有k位数中所有相邻两位数差都小于等于2的数.输出$\mod{10^9+7}$ 说的不够明白.来个例子: $213

java之day4

Calc.java package day4; public class Calc { public int sum(int num1, int num2) { int sum = num1 + num2; return sum; } } CalcTest.java package day4; import java.util.Scanner; public class CalcTest { public static void main(String[] args) { Calc calc =

Day4 - Python基础4 迭代器、装饰器、软件开发规范

Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 1.列表生成式,迭代器&生成器 列表生成式 孩子,我现在有个需求,看列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],我要求你把列表里的每个值加1,你怎么实现?你可能会想到2种方式 >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>

Python基础篇-day4

本节目录: 1.字符编码 2.函数 2.1参数 2.2变量 2.3返回值 2.4递归 2.5 编程范式 2.6 高阶函数 ************************************************************ 1.字符编码 py2 指定编码时,文件和变量为指定的编码:默认为ASICCpy3 默认文件为utf-8,变量为unicode 只有unicode有encode方法 先说python2 py2里默认编码是ascii文件开头那个编码声明是告诉解释这个代码的程序