Javascript的小问题-每次都会淡出,而不仅仅是页面加载
Tiny Javascript issue - FadeIn every time, not just on Pageload
我有以下代码:
目前它显示2个选项卡,其中显示2个独立的数据位,您可以在其中切换。
然而,当每个选项卡被"点击"时,我希望每个列表都像它最初在PageLoad上一样淡出。
这是可能的,我如何实现这一点?
<!DOCTYPE html>
<html>
<head>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<meta charset=utf-8 />
<title>Simple List FadeIn</title>
<style>
ul#thisisthelist1 li, ul#thisisthelist2 li{
display:none;
}
</style>
<script type="text/javascript">
/* idTabs ~ Sean Catchpole - Version 2.2 - MIT/GPL */
(function(){var dep={"jQuery":"http://code.jquery.com/jquery-latest.min.js"};var init=function(){(function($){$.fn.idTabs=function(){var s={};for(var i=0;i<arguments.length;++i){var a=arguments[i];switch(a.constructor){case Object:$.extend(s,a);break;case Boolean:s.change=a;break;case Number:s.start=a;break;case Function:s.click=a;break;case String:if(a.charAt(0)=='.')s.selected=a;else if(a.charAt(0)=='!')s.event=a;else s.start=a;break;}}
if(typeof s['return']=="function")
s.change=s['return'];return this.each(function(){$.idTabs(this,s);});}
$.idTabs=function(tabs,options){var meta=($.metadata)?$(tabs).metadata():{};var s=$.extend({},$.idTabs.settings,meta,options);if(s.selected.charAt(0)=='.')s.selected=s.selected.substr(1);if(s.event.charAt(0)=='!')s.event=s.event.substr(1);if(s.start==null)s.start=-1;var showId=function(){if($(this).is('.'+s.selected))
return s.change;var id="#"+this.href.split('#')[1];var aList=[];var idList=[];$("a",tabs).each(function(){if(this.href.match(/#/)){aList.push(this);idList.push("#"+this.href.split('#')[1]);}});if(s.click&&!s.click.apply(this,[id,idList,tabs,s]))return s.change;for(i in aList)$(aList[i]).removeClass(s.selected);for(i in idList)$(idList[i]).hide();$(this).addClass(s.selected);$(id).show();return s.change;}
var list=$("a[href*='#']",tabs).unbind(s.event,showId).bind(s.event,showId);list.each(function(){$("#"+this.href.split('#')[1]).hide();});var test=false;if((test=list.filter('.'+s.selected)).length);else if(typeof s.start=="number"&&(test=list.eq(s.start)).length);else if(typeof s.start=="string"&&(test=list.filter("[href*='#"+s.start+"']")).length);if(test){test.removeClass(s.selected);test.trigger(s.event);}
return s;}
$.idTabs.settings={start:0,change:false,click:null,selected:".selected",event:"!click"};$.idTabs.version="2.2";$(function(){$(".idTabs").idTabs();});})(jQuery);}
var check=function(o,s){s=s.split('.');while(o&&s.length)o=o[s.shift()];return o;}
var head=document.getElementsByTagName("head")[0];var add=function(url){var s=document.createElement("script");s.type="text/javascript";s.src=url;head.appendChild(s);}
var s=document.getElementsByTagName('script');var src=s[s.length-1].src;var ok=true;for(d in dep){if(check(this,d))continue;ok=false;add(dep[d]);}if(ok)return init();add(src);})();
</script>
</head>
<body>
<div id="usual1" class="usual">
<ul>
<li><a class="selected" href="#tab1">Tab 1</a></li>
<li><a href="#tab2">Tab 2</a></li>
</ul>
<div id="tab1">
<ul id="thisisthelist1">
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</div>
<div id="tab2">
<ul id="thisisthelist2">
<li>4</li>
<li>5</li>
<li>6</li>
</ul>
</div>
</div>
<script type="text/javascript">
$("#usual1 ul").idTabs();
</script>
<script>
$(document).ready(function () {
$("ul#thisisthelist1 li").each(function(i){
$(this).delay(i*400).fadeIn('slow');
});
$("ul#thisisthelist2 li").each(function(i){
$(this).delay(i*400).fadeIn('slow');
});
});
</script>
</body>
</html>
<script type="text/javascript">
$('.tab').click(function(event) {
var element = $(this);
element
.siblings('.tab')
.find('ul > li')
.fadeOut();
element
.find('ul > li')
.fadeIn();
});
</script>
<body>
<div id="tab1" class="tab">
<ul id="thisisthelist1">
<li>1</li>
<li>2</li>
<li>3</li>
</ul>
</div>
<div id="tab2" class="tab">
<ul id="thisisthelist2">
<li>4</li>
<li>5</li>
<li>6</li>
</ul>
</div>
</body>
相关文章:
- Ajax聊天消息重复而不仅仅是更新
- 鼠标悬停事件影响列表中所有行中的按钮,而不仅仅是特定按钮
- 事件为所有项目而不仅仅是当前项目激发
- 在加载时显示,而不仅仅是在选中时显示
- 删除 HttpCookie 不仅仅是它的值
- 脚本选择所有输入,而不仅仅是复选框
- for 循环中的 if 语句都执行,而不仅仅是一个
- 当将函数传递给方法时,为什么使用匿名函数容器而不仅仅是原始函数有效
- .slideup()删除整个ul,而不仅仅是嵌套的li
- jQuery隐藏所有trs或td,而不仅仅是一个
- 使用Maven压缩所有内容,而不仅仅是源目录
- 从数组中删除双值,而不仅仅是javascript中的重复值
- 在全球范围内强制ng严格di,而不仅仅是在ng应用程序级别上
- Jquery Slider-获取滑块的每个数值?不仅仅是在mouseout上
- 我如何让jQuery在Facebook发布自动加载时做一些事情,而不仅仅是在页面加载时
- 如何使元素的宽度和高度为页面(文档)的100%,而不仅仅是窗口(浏览器)
- 在 Magnific 弹出窗口中打开所有图像,而不仅仅是发布图像
- 有没有办法使非html5支持浏览器支持html5,而不仅仅是html5标记,html5 api也是如此
- 之前每个测试都会调用每个测试,而不仅仅是一次
- Javascript的小问题-每次都会淡出,而不仅仅是页面加载