Rekey's WebSpace

Just So So ...

Home Develop Life Music News 关于

呃,无聊封装一个选项卡.

作者:Rekey 发布时间:October 30, 2009 分类:Develop 7 Comments

这潭死水快干了.随便更新个吧..
冰块,我快写完了,你竟然去睡觉了.鄙视你.

< !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" lang="UTF-8">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>Untitled Document</title>
        <script type="text/javascript">
            /**
             * @author Rekey
             */
            var tab = function(data){
                this.data = data;
            }
            tab.prototype = {
                init:function(){
                    var $t = this;
                    var $d = this.data;
                    $d.t1 = $d.t1?$d.t1:'span';
                    $d.t2 = $d.t2?$d.t2:'ul';
                    $d.cur = $d.cur?$d.cur:'current';
                    $d.s = $d.s?$d.s:0;
                    $d.ts1 = document.getElementById($d.id).getElementsByTagName($d.t1);
                    $d.ts2 = document.getElementById($d.id).getElementsByTagName($d.t2)
                    $d.ts1[$d.s].className = $d.cur;
                    $d.ts2[$d.s].style.display = 'block';
                    for(var i = 0; i < $d.ts1.length; i++){
                        $d.ts1[i].onclick = (function(i,$d){
                            return function(){
                                $d.ts2[$d.s].style.display = 'none';
                                $d.ts1[$d.s].className = '';
                                $d.s = i;
                                this.className = $d.cur;
                                $d.ts2[i].style.display = 'block';
                            }
                        })(i,$d)
                    }
                }
            }
        </script>
        <style type="text/css">
            *{margin:0;padding:0;list-style:none}
            body{padding:10px;font-size:12px;}
            .tab{width:520px;background:#fff;margin-bottom:10px;}
            .tab span{float:left;height:20px;line-height:20px;width:78px;border:1px solid #aeaeae;border-bottom:none;margin:0 5px 0 0;text-align:center;cursor:pointer;}
            .tab span.current{position:relative;margin-bottom:-1px;background:#fff;height:21px;}
            .tab ul{clear:both;border:1px solid #aeaeae;padding:5px;display:none;}
        </style>
    </script></head>
    <body>
        <div id="tab" class="tab">
            <span>选项A</span>
            <span>选项B</span>
            <span>选项C</span>
            <span>选项D</span>
            <span>选项E</span>
            <span>选项F</span>
            <ul><li>切换吧切换吧a</li></ul>
            <ul><li>切换吧切换吧b</li></ul>
            <ul><li>切换吧切换吧C</li></ul>
            <ul><li>切换吧切换吧D</li></ul>
            <ul><li>切换吧切换吧E</li></ul>
            <ul><li>切换吧切换吧F</li></ul>
        </div>
        <div id="tab1" class="tab">
            <span>选项A</span>
            <span>选项B</span>
            <span>选项C</span>
            <span>选项D</span>
            <span>选项E</span>
            <span>选项F</span>
            <ul><li>切换吧切换吧a</li></ul>
            <ul><li>切换吧切换吧b</li></ul>
            <ul><li>切换吧切换吧C</li></ul>
            <ul><li>切换吧切换吧D</li></ul>
            <ul><li>切换吧切换吧E</li></ul>
            <ul><li>切换吧切换吧F</li></ul>
        </div>
        <script type="text/javascript">
            var tab1 = new tab({id:'tab',s:5});
            tab1.init()
            var tab = new tab({id:'tab1',s:5});
            tab.init()
        </script>
    </body>
</html>
标签 : javascript, 选项卡

用class来控制的选项卡.支持N个同时在一个页面

作者:Rekey 发布时间:August 27, 2009 分类:Develop No Comments

不过好像要用的话要传递很多参数.不是很好.不过个人使用到是不错的选择.

<!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=utf-8" />
<title>无标题文档</title>
<link href="css/css.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
	function SetTab(id,tid,tag,ttag,cs,tcs){
		var a = document.getElementById(tid).getElementsByTagName(ttag);
		var b = document.getElementById(id).getElementsByTagName(tag);
		function tab(i){
			a[i].onclick = function(){none();b[i].style.display = "";a[i].className = cs};
		}
		for(i=0;i<a .length;i++){
			tab(i);
		}
		function none(){
			for(i=0;i<a.length;i++){
				b[i].style.display = "none";
				a[i].className = tcs;
			}
		}
		none();
		b[0].style.display = "";
		a[0].className = cs;
	}
	window.onload = function(){SetTab("tab","tab2","ul","li","abc","bcs")};
</script>
</a></script></head>
<body>
<ul id="tab2">
	<li>广告传播</li>
	<li>广告传播2</li>
	<li>广告传播3</li>
</ul>
<div id="tab">
    	<ul>
        	<li>
            	<img src="test_img.gif" />
                <h3><a href="">广告传播</a></h3>
                <span>几十年,媒体帮助传达了广告信息。广告牌带来了巨大醒目的广告形式,广播以平静对话的方式告诉你广告内容。而对于电视媒体,广告主可以利用的广告形式多种多样,但他们似乎总爱用30秒的广告...广告主可以利用的广告形可以利用.</span>
            </li>
        </ul>
		<ul>
        	<li>
            	<img src="test_img.gif" />
                <h3><a href="">广告传播2</a></h3>
                <span>几十年,媒体帮助传达了广告信息。广告牌带来了巨大醒目的广告形式,广播以平静对话的方式告诉你广告内容。而对于电视媒体,广告主可以利用的广告形式多种多样,但他们似乎总爱用30秒的广告...广告主可以利用的广告形可以利用.</span>
            </li>
        </ul>
		<ul>
        	<li>
            	<img src="test_img.gif" />
                <h3><a href="">广告传播3</a></h3>
                <span>几十年,媒体帮助传达了广告信息。广告牌带来了巨大醒目的广告形式,广播以平静对话的方式告诉你广告内容。而对于电视媒体,广告主可以利用的广告形式多种多样,但他们似乎总爱用30秒的广告...广告主可以利用的广告形可以利用.</span>
            </li>
        </ul>
</div>
</body>
</html>
1