我对 jquery 很陌生。基本上我所做的就是创建一个动态图库,其中填充了从 ajax 调用中检索到的图像。这些图像被附加到一个无序列表中,并且应该接收特定于图像库的特殊 css 格式,其他 ul 列表保持不变。一切都很好,但是当我查看图库时,图像上没有呈现正确的 css 格式。我已经搜索了整个 stackoverflow 并尝试了许多针对类似问题的选项,包括.listview('refresh'); 并在 ajax完成后:以及其他一些解决方案。没有任何工作。如果我离开页面并返回,则会应用格式。这是我正在使用的以下代码。
链接到画廊
$('ul#fieldList').append('<li id="albums"><a href="#Gallery1?" onClick="GetUserPhotos('+value.album_id+'); return false;"><img src="images/1.jpg"><h3>'+value.name+'</h3><p>'+value.description+'</p></a><div class="ui-li-count">'+value.count+' Images</div></li>');
onClick 函数
function GetUserPhotos(albumid) {
console.log("Get User Photos Function Ran");
var get_user_photos_album_id = albumid;
var get_user_photos_client_id = window.localStorage.getItem("client_id");
var get_user_photos_user_id = window.localStorage.getItem("user_id");
console.log("Assign Variables from local storage");
var formData = {
user_id: get_user_photos_user_id,
client_id: get_user_photos_client_id,
album_id: get_user_photos_album_id
}; //Array
$.ajax({
url: "client_photos.php",
type: "POST",
data: formData,
async: "false",
success: function (data) {
$("ul#photosList li#photos").remove();
$("#test1").html('');
//data - response from server
var PhotoData = $.parseJSON(data);
console.log("PhotoData json data parsed");
$("ul#fieldList li#albums").remove();
$.each(PhotoData, function (key, value) {
$('ul#photosList').append('<li id="photos"><a rel="' + value.album + '" href="http://www.myphotoshootapp.com/cms/uploads/' + value.client_id + '/' + value.album + '/' + value.id + '.' + value.ext + '" class="swipebox" title="' + value.fullname + '""><img src="http://www.myphotoshootapp.com/cms/uploads/thumbs/' + value.client_id + '/' + value.album + '/' + value.id + '.' + value.ext + '" alt="' + value.fullname + '" /></a></li>');
});
Swipe();
},
complete: function () {
$('#ul#photosList').listview('create');
$.mobile.changePage("#Gallery1");
}
});
}
DIV 项目的添加到
<div data-role="content">
<ul data-role="listview" data-inset="true" id="photosList">
<li id="title">Photos</li>
<div class="main" id="test1"><img src="images/ajax-loader.gif" alt="Loading..." /></div>
</ul>
</div>
和 CSS
li#photos { float: left !important; width: 33.33333333% !important; }
li#photos a { display: block !important; margin: 5px !important; border: 1px solid #3c3c3c !important; }
li#photos img { display: block !important; width: 100% !important; height: auto !important; }
正如我所说,我对此很陌生,并且边走边学,我从这里阅读了很多其他问题中学到了很多东西,但我无法弄清楚这一点。谢谢您的帮助。
第一次访问时,一堆额外的类,如 ui-btn、ui-btn-icon-right、ui-li-has-arrow、ui-li、ui-li-has-thumb、ui-btn-up-c正在添加,第二次只应用了我的正常格式。
首次访问 此图像显示了第一页访问时的 css 格式的外观 Here's Image
第二次访问 此图像显示了当我返回页面时 css 格式的外观(如它所假设的那样) 这是图像