1. 第一个功能是是支持剪切板粘贴上传,比如qq截图上传之类的。
这个是网上找的,并自己实现了代码:
- <script>
- ( function () {
- document.addEventListener('paste', function (e) {
- var items = ((e.clipboardData || window.clipboardData).items) || [];
- var file = null;
- if (items && items.length) {
- for ( var i = 0; i < items.length; i++) {
- if (items[i].type.indexOf('image') !== -1) {
- file = items[i].getAsFile();
- break ;
- }
- }
- }
- if (!file) {
- alert('粘贴内容非图片!');
- return ;
- }
- var formData = new FormData();
- formData.append('file', file);
- var xhr = new XMLHttpRequest();
- xhr.onload = function () {
- try {
- var result = JSON.parse(this.responseText);
- if (result.result === 'success') {
- var links = document.getElementById( "links" );
- links.innerHTML += result.url + "<br />" ;
- var bbscode = document.getElementById( "bbscode" );
- bbscode.innerHTML += "[img]" + result.url + "[/img]<br />" ;
- var markdown = document.getElementById( "markdown" );
- markdown.innerHTML += "![](" + result.url + ")<br />" ;
- var html = document.getElementById( "html" );
- html.innerHTML += "<img src=\"" + result.url + "\" /><br />" ;
- } else {
- alert('上传失败1');
- }
- } catch (e) {
- alert('上传失败2');
- }
- };
- xhr.onerror = function () {
- alert('上传失败3');
- };
- xhr.open('POST', 'file.php', true);
- xhr.send(formData);
- });
- })();
- </script>
回贴