【发布时间】:2013-02-20 12:52:49
【问题描述】:
按 ID 有多个热点。 ID 特定的热点在鼠标悬停时显示一个区域(#ID-ed textarea),然后在鼠标移出时隐藏文本区域(注意 CSS display:hidden 比 hide 快得多)。大约有 50 个。我已经详细地写了这个 - 也就是每个人的函数。
想学习一种更好、更明智、更高效、更短的方法来做到这一点。
//// POP 1_1
$('#pop_01_01').hover(
function() {
$('#text_01_01.textarea').fadeIn('fast');
},
function() {
$('#text_01_01.textarea').css({'display':'none'});
}
);
//// POP 02_01
$('#pop_02_01').hover(
function() {
$('#text_02_01.textarea').fadeIn('fast');
},
function() {
$('#text_02_01.textarea').css({'display':'none'});
}
);
//// POP 02_01
$('#pop_02_02').hover(
function() {
$('#text_02_02.textarea').fadeIn('fast');
},
function() {
$('#text_02_02.textarea').css({'display':'none'});
}
);
//// POP 02_03
$('#pop_02_03').hover(
function() {
$('#text_02_03.textarea').fadeIn('fast');
},
function() {
$('#text_02_03.textarea').css({'display':'none'});
}
);
【问题讨论】:
-
没有看到您的 HTML,这很难回答。
-
旁注:使用
.hide()而不是.css({'display':'none'})。它更短。 -
欣赏 hide() 的想法,但是 hide() 明显变慢并导致眨眼。已经对此进行了测试并由其他人验证。仅供参考,希望这对某人有所帮助。
-
我对上述关于隐藏的评论表示歉意。通过缩短每个 jfriend00 的代码,hide() 现在可以隐藏而不会眨眼。我原来的冗长代码要慢得多。
标签: jquery function mouseover jquery-hover mouseout