我正在开发一个跨平台的移动应用程序,其中我在SD卡的网格视图中显示图像。但是我想在用户单击每个图像后删除图像。 我尝试过使用remove()但它没有用。任何人都告诉我我必须做什么。
function listDir(directoryEntry, domParent){
$.mobile.showPageLoadingMsg(); // show loading message
var directoryReader = directoryEntry.createReader();
alert(directoryEntry.toURL());
var s=directoryEntry.toURL();
directoryReader.readEntries(function(entries){ // success get files and folders
for(var i=0; i<entries.length; ++i){
if( i%2 == 0) domParent.append('<div class="ui-block-a"><div class="thumbnail"><img src="'+s+""+entries[i].name+'" title="'+entries[i].name+'" /></div></div>');
else domParent.append('<div class="ui-block-b"><div class="thumbnail"><img src="'+s+""+entries[i].name+'" title="'+entries[i].name+'" /></div></div>');
console.log(entries[i].name);
console.log(entries[i].fullPath);
}
$("#back").click(del);
function del(){
for(var i=0;i<entries.length;++i){
entries[i].delete;
entries[i].remove(function(file){
console.log("File removed!");
},function(){
console.log("error deleting the file " + error.code);
});
}
alert("Image deleted");
window.location="camera.html";
}
$.mobile.hidePageLoadingMsg(); // hide loading message
}, function(error){ // error get files and folders
alert(error.code);
});
显示图片
function showImage(){
var imgs = $('#gallery img');
imgs.live('click', function(){
var title = $(this).attr('title');
$('#picture h1').text(title);
$('#pic').html($(this).clone());
$.mobile.changePage($('#picture'));
});
}
答案 0 :(得分:0)
entries[i].delete;
没有这样的删除属性。 如果要从数组中删除某些属性,请使用
delete entries[i];
但它不会清空数组,但会在这些索引中插入undefined
如果要一次清空一个数组,即一步
entries = []
或
entries.length = 0
就从DOM中删除图像而言,您可以使用
$('#gallery img').remove()
为类似的场景创建一个小提琴: