求帮忙优化HTML的jquery代码,写一个类似if
RT,求帮忙优化HTML的jquery代码,大概是一个if-else的循环过程。我要实现的功能是:例如,目前有9个div层,id分别为B1,B2,B3......B9,还...
RT,求帮忙优化HTML的jquery代码,大概是一个if-else的循环过程。我要实现的功能是:例如,目前有9个div层,id分别为B1,B2,B3......B9,还有9张图片,id分别为P1,P2,P3......P9,而当鼠标移动到B1上时,显示P1,其他图片隐藏,鼠标移动到B2上时,显示P2,其他图片隐藏,以此类推。我不太会写jquery的循环,求帮忙。我自己写的代码如下,但是图片太多的话,这样写就太长了,求优化,谢谢!<SCRIPT>$(document).ready(function(){ $("#B1").mouseover(function(){ $("#P1").hide(); $("#P2").show(); }); $("#B2").mouseover(function(){ $("#P2").hide(); $("#P1").show(); });});</SCRIPT>
展开
1个回答
展开全部
具体你没贴出来的HTML代码,不知道你的DIV与IMG的嵌套关系,所以下面的写法是考虑了诸多因素在内的,如果你将DIV与IMG布局好点,代码还可以更简洁:
(function($, t) {
$(function(){
var t = t || '#B1,#B2';
$(t).each(function(){
var pic_id = '#P' + $(this).attr('id').substring(1);
$(pic_id).hide();
// 鼠标事件
$(this).hover(function(){$(pic_id).show();}, function(){$(pic_id).hide();});
});
});
})(jQuery, '#B1,#B2,#B3,#B4,#B5,#B6,#B7,#B8,#B9');
(function($, t) {
$(function(){
var t = t || '#B1,#B2';
$(t).each(function(){
var pic_id = '#P' + $(this).attr('id').substring(1);
$(pic_id).hide();
// 鼠标事件
$(this).hover(function(){$(pic_id).show();}, function(){$(pic_id).hide();});
});
});
})(jQuery, '#B1,#B2,#B3,#B4,#B5,#B6,#B7,#B8,#B9');
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询