动态生成一些变量后,我想使用它们的值来查找类,并对每个变量应用一些样式。这是我到目前为止尝试过的:
$(document).ready(function() {
var input = []
var message = []
for(var n=1; n<=3; n++) {
input[n] = 'text' + n; //this will create three variables with the values text1, text2 and text3
message[n] = 'tip' + n; //this will create three variables with the values tip1, tip2 and tip3
$('.' + input[n]).mouseover(function() {
$('.' + message[n]).css("display", "block");
});
$('.' + input[n]).mouseout(function() {
$('.' + message[n]).css("display", "none");
});
}
});
所以我想要的逻辑是:
- 将鼠标悬停在类文本 1 上时,应显示提示 1(否则提示 1 将被隐藏(
- 将鼠标悬停在类文本 2 上时,应显示 tip2(否则 tip2 将被隐藏(
- 将鼠标悬停在类文本 3 上时,应显示提示 3(否则提示 3 将被隐藏(
计划的逻辑仅在我在n
上提供 -harcoded- 值时才有效,但n
的值可能会在不久的将来变为更高的值(例如 4、5 或更多(,所以我想知道是否有一种通用方法来应用该逻辑。
有人可以帮我一点吗?
您可以使用带有文档鼠标悬停/鼠标悬停事件的选择器来执行此操作。只需使用"input"和"message"作为类,并使用data属性将输入连接到消息。
.PHP:
<?php
for($i=1; $i<10; $i++)
{
echo '<span class="input" data-anchor="'.$i.'">This is input '.$i.'</span>';
echo '<span class="message" data-anchor="'.$i.'" style="display:none">This is message '.$i.'</span><br>';
}
?>
JQUERY:
$(document).on('mouseover', '.input', function(){
var anchor = $(this).data('anchor');
$('.message[data-anchor="'+anchor+'"]').show();
});
$(document).on('mouseout', '.input', function(){
var anchor = $(this).data('anchor');
$('.message[data-anchor="'+anchor+'"]').hide();
});