Gra*_*eme 1 jquery html5 functional-programming web-applications jquery-selectors
我正在为带有缩略图的图库创建一个jQuery函数.网页顶部有一个div,它会显示更大版本的点击缩略图以及标题和说明.
单击缩略图时,标题会按预期更改,但说明仍为默认值(由HTML定义).
缩略图位于无序列表中,如下所示:
<ul class=thumblist id=thumblist>
<li><a title="thumb1" description="this is the first pic"></a></li>
<li><a title="thumb2" description="this is the second pic"></a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
这是jQuery函数:
$('.thumblist a').click(function() {
$("#title").text(this.title);
$("#description").text(this.description);
});
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能修复我的标记并实现我正在寻找的功能?
你想要的attr
功能:
$('.thumblist a').click(function() {
var $this = $(this);
$("#title").text($this.attr("title")); // Or `this.title`, see below
$("#description").text($this.attr("description"));
});
Run Code Online (Sandbox Code Playgroud)
它是半工作的原因是它title
是一个有效的HTML属性,在DOM元素实例上有一个反射属性,所以this.title
给了你那个属性; 但description
不是,所以没有反映的description
财产.使用attr
go并查找实际属性值.
理想的情况下,使用data-*
属性为临时的属性(如你description
)没有任何标准定义.