肖像画の上に従業員の名前を配置しようとしています。
オブジェクトのオブジェクトをループして、雇用年ごとに従業員を取得しています
var classes = {
2013: {
"image/path.png" : "name of employee",
"image/path2.png" : "name of employee2"
},
2012...
}
そして、jQueryeach
を使用してそれらをループし、雇用年ごとに肖像画と名前を表示しています。
jQuery(document).ready(function($){
//identify all elements in <li>
$('li').on('mouseover', function(e){
$('#overlay').empty();
var title = $('<h2>');
title.text('Class of ' + e.target.id);
$('#overlay').append(title);
$.each(classes[e.target.id], function(path, name) {
var img = $('<img/>');
img.attr('src', path);
$('#overlay').append("<span class='imagesContainer'>");
$('#overlay').append(img);
$('#overlay').append("<span class='names'>" + name + "</span>");
$('#overlay').append("</span>");
});
});
});
それぞれのポートレートの上に名前を表示するために、このガイドに従って、画像を位置: 相対コンテナー ($('#overlay').append("<span class='imagesContainer'>"); ... append image here ... $('#overlay').append("</span>");
で囲み、その上に位置付け: 絶対... でテキストを配置しようとしましたが、うまくいきません...
CSS:
#overlay {
position: relative;
float: left;
width: 100%;
}
.imagesContainer {
position: relative;
float: left;
}
.names {
position: absolute;
/*background: rgba(0, 0, 0, 0.7);*/
padding: 5px;
color: white;
font-size: 12px;
font-family: "Trebuchet MS", Helvetica, sans-serif;
}
それぞれの名前を正しい画像の上に表示する方法はありますか?
ありがとう!