使用JQuery删除图像

时间:2016-01-18 11:16:51

标签: javascript jquery html jquery-mobile

我正在开发一个跨平台的移动应用程序,其中我在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'));        
    });
}

1 个答案:

答案 0 :(得分:0)

entries[i].delete;

没有这样的删除属性。 如果要从数组中删除某些属性,请使用

 delete entries[i];

但它不会清空数组,但会在这些索引中插入undefined

如果要一次清空一个数组,即一步

entries = []

entries.length = 0

就从DOM中删除图像而言,您可以使用

$('#gallery img').remove()

为类似的场景创建一个小提琴:

Fiddle