Javascript jQuery代码有时只能工作?
我对jQuery还没有经验,我一直在尝试做一些事情。 一般的想法是,单击图像时,该图像的alt属性将添加到其上方的段落中 您将在下面看到我尝试使用的代码。 现在,它起作用了,但只是偶尔。 例如,我单击的第一个图像总是返回未定义的alt。 但如果我一直尝试点击它,有时它会给我一个正确的 我的图像是可选择的,当我一次选择所有图像时,每次都会给出准确的名称 还有谁经历过这个问题吗 HTML代码很抱歉,这是另一种语言,请询问我是否需要翻译:Javascript jQuery代码有时只能工作?,javascript,jquery,html,Javascript,Jquery,Html,我对jQuery还没有经验,我一直在尝试做一些事情。 一般的想法是,单击图像时,该图像的alt属性将添加到其上方的段落中 您将在下面看到我尝试使用的代码。 现在,它起作用了,但只是偶尔。 例如,我单击的第一个图像总是返回未定义的alt。 但如果我一直尝试点击它,有时它会给我一个正确的 我的图像是可选择的,当我一次选择所有图像时,每次都会给出准确的名称 还有谁经历过这个问题吗 HTML代码很抱歉,这是另一种语言,请询问我是否需要翻译: <div id="onzeleden">
<div id="onzeleden">
<p id="feedback">Tijdens "De Bluts" zagen we de beste beentjes van...
<span id="select-result"></span></p>
<div id="leden">
<abbr title="Jeroen Beckers">
<img src="fotos%20leden/Jeroen%20transp.gif"
alt="Jeroen Beckers"></abbr>
<abbr title="Luc Verreet">
<img src="fotos%20leden/Luc%20transp.gif"
alt="Luc Verreet"/></abbr>
<abbr title="Kristel Van den Broeck">
<img src="fotos%20leden/Kristel%20transp.gif"
alt="Kristel Van den Broeck"/></abbr>
<abbr title="Jesse Op de Beeck">
<img src="fotos%20leden/Jesse%20transp.gif"
alt="Jesse Op de Beeck"/></abbr>
<abbr title="Maria Bogaerts">
<img src="fotos%20leden/Maria%20transp.gif"
alt="Maria Bogaerts"/></abbr>
<abbr title="Bruno Van Impe">
<img src="fotos%20leden/Bruno%20transp.gif"
alt="Bruno Van Impe"/></abbr>
<abbr title="Brenda De Laet">
<img src="fotos%20leden/Brenda%20transp.gif"
alt="Brenda De Laet"></abbr>
<abbr title="Els Donckers">
<img src="fotos%20leden/Els%20transp.gif"
alt="Els Donckers"></abbr>
</div>
这是因为您的点击由您的abbr处理,它没有alt属性 如果只想使图像可选,则应在可选声明中添加过滤器选项,如下所示:
$(function() {
$( "#leden" ).selectable({
filter: 'img',
stop: function() {
var result = $( "#select-result" ).empty();
$( ".ui-selected", this ).each(function() {
var sAlt = $(this).attr("alt");
result.append(sAlt + ". ");
});
}
});
});
请看小提琴:您将通过一个指向演示的链接或更好的JSFIDLE获得更好的答案。
$(function() {
$( "#leden" ).selectable({
filter: 'img',
stop: function() {
var result = $( "#select-result" ).empty();
$( ".ui-selected", this ).each(function() {
var sAlt = $(this).attr("alt");
result.append(sAlt + ". ");
});
}
});
});