J'essaie de faire une simple fonction de pointe d'outil (j'essaie d'apprendre jQuery alors s'il vous plaît ne suggère pas de plugins pour cela). Quand je l'écris comme cela, il fonctionne:Pourquoi ce code jQuery ne fonctionne-t-il pas?
$('span.toolTip').hide();
function toolTip() {
$('.targetLink').mouseover(function() {
$('.toolTip').show().html('Hello there');
});
}
<span class='toolTip'></span>
<a href="#" class="targetLink">Hover over me</a>
Mais lorsque je tente de passer des paramètres par la fonction ne fonctionne pas:
$('span.toolTip').hide();
function toolTip(target, tooltip, message) {
var target = '.' + target;
$(target).mouseover(function() {
var tooltip = '.' + tooltip;
$(tooltip).show().html(message);
});
}
toolTip('targetLink', 'toolTip', 'Hello There');
<span class='toolTip'></span>
<a href="#" class="targetLink">Hover over me</a>
+1. C'est le problème. Parfois, cela s'appelle l'ombrage variable. Une autre solution consisterait simplement à utiliser une variable nommée différemment plutôt que de supprimer le 'var', par ex. 'function toolTip (cible, info-bulle, message) {var targetSelector = '.' + cible; ... ' –