首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

jQuery中的toggle()有关问题

2013-03-29 
jQuery中的toggle()问题html xmlnshttp://www.w3.org/1999/xhtmlheadmeta http-equivContent-Ty

jQuery中的toggle()问题
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="jquery-1.9.0.js" type="text/javascript"></script>
<link href="css/default.css" type="text/css" rel="stylesheet" />

<script type="text/javascript">
$(function(){
//获得索引大于5的除了最后一条的项
var $category = $(".SubCategoryBox ul li:gt(5):not(:last)");

//隐藏部分索引
$category.hide();
var $btn=$(".showmore>a");
$btn.toggle(function(){
$category.show();
$(this).find("span").css("background","url(img/up.gif) no-repeat 0 0").text("精简显示品牌");
$(".SubCategoryBox ul li").filter(":contains('佳能'),:contains('尼康'),:contains('奥林巴斯')").addClass("promoted");
},function(){
$category.hide();
$("this").find("span").css("background","url(img/down.gif) no-repeat 0 0").text("显示全部品牌");
$(".SubCategoryBox ul li").removeClass("promoted");
})
})
</script>
</head>

<body>
<div alt="jQuery中的toggle()有关问题" />

用toggle()函数运行结果与预期的不一样,预期的是这样的jQuery中的toggle()有关问题
,上面的按钮为什么不见了?在firebar上可以看到,按钮的display被自动设成了:display:none;为什么呢?如果用if-else判断就没有问题
[解决办法]
那是因为你的$("this")用错了。
你代码里的$("this")指的是$(".SubCategoryBox ul li:gt(5):not(:last)");
改成$(".showmore")就可以了。
demo: http://jsfiddle.net/a5NYA/
------解决方案--------------------


jquery 1.9里面已经删除了toggle(fn1, fn2)这个函数:

引用
Note: This method signature was deprecated in jQuery 1.8 and removed in jQuery 
1.9. jQuery also provides an animation method named .toggle() that toggles the 
visibility of elements. Whether the animation or the event method is fired depends on 
the set of arguments passed.


详见
http://api.jquery.com/toggle-event/

[解决办法]
你引用版本低一点的jquery就可以了
query 1.9里面已经删除了toggle(fn1, fn2)这个函数:
引用
Note: This method signature was deprecated in jQuery 1.8 and removed in jQuery 
1.9. jQuery also provides an animation method named .toggle() that toggles the 
visibility of elements. Whether the animation or the event method is fired depends on 
the set of arguments passed.

热点排行