jQueryUI可排序+ HTML5文件API示例?

时间:2012-05-09 23:57:29

标签: jquery html5 jquery-ui jquery-ui-sortable fileapi

有没有人知道任何结合了jQueryUI的好示例:可排序:display-grid与HTML5 File API一起显示将多个本地图像同时丢入浏览器,然后所有这些图像都显示在显示器中格?

价:
http://jqueryui.com/demos/sortable/#display-grid
http://html5demos.com/file-api
How can I read a local file when the user presses a button using the HTML5 File API ?

1 个答案:

答案 0 :(得分:2)

为图片创建占位符:

<ul id="sortable"></ul>

可绑定到占位符:

$( "#sortable" ).sortable();
$( "#sortable" ).disableSelection();

将ondrop函数绑定到占位符:

$('#sortable').on(
    'drop',
    function(e){
        if(e.originalEvent.dataTransfer){
            if(e.originalEvent.dataTransfer.files.length) {
                e.preventDefault();
                e.stopPropagation();
                upload(e.originalEvent.dataTransfer.files);
            }   
        }
    }
);

最后但并非最不重要的是,编写File API部分:

function upload(files){
    for (var i = 0, f; f = files[i]; i++) {
        var imageReader = new FileReader();
        imageReader.onload = (function(aFile) {
            return function(e) {
                var li = document.createElement('li');
                li.innerHTML = ['<img class="images" src="', e.target.result,'" title="', aFile.name, '"/>'].join('');
                $('#sortable').append(li);
         };
    })(f);
    imageReader.readAsDataURL(f);
}

查看行动中的完整代码: http://jsfiddle.net/xKYxL/2/

现金: https://www.ibm.com/developerworks/mydeveloperworks/blogs/bobleah/entry/html5_code_example_of_file_api_drag_drop_hard_drive_files_to_a_webpage28?lang=en