main.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /**
  2. * 图片base 64编码
  3. * @author xianliezhao
  4. */
  5. var ImageBase64 = (function () {
  6. var _getDataUri = function (file) {
  7. var reader = new FileReader();
  8. reader.onload = function (evt) {
  9. $('#result').val(evt.target.result);
  10. $('#preview').attr('src', evt.target.result).show();
  11. $('td .x-panel').css('background-image', 'none');
  12. };
  13. reader.readAsDataURL(file);
  14. };
  15. var _bindEvent = function () {
  16. $('textarea').bind('click', function (e) {
  17. this.select();
  18. });
  19. var $file = $('#file').change(function (e) {
  20. if (this.files.length) {
  21. _getDataUri(this.files[0]);
  22. this.value = '';
  23. }
  24. });
  25. $('#upload').click(function (e) {
  26. e.preventDefault();
  27. $file.trigger('click');
  28. });
  29. //监听paste事件
  30. document.onpaste = function (event) {
  31. var items = (event.clipboardData || event.originalEvent.clipboardData).items;
  32. for (var index in items) {
  33. var item = items[index];
  34. if (/image\//.test(item.type)) {
  35. var file = item.getAsFile();
  36. _getDataUri(file);
  37. break;
  38. }
  39. }
  40. };
  41. $(document).bind('drop', function (e) {
  42. e.preventDefault();
  43. e.stopPropagation();
  44. var files = e.originalEvent.dataTransfer.files;
  45. if (files.length) {
  46. if (/image\//.test(files[0].type)) {
  47. _getDataUri(files[0]);
  48. } else {
  49. alert('请选择图片文件!');
  50. }
  51. }
  52. }).bind('dragover', function (e) {
  53. e.preventDefault();
  54. e.stopPropagation();
  55. });
  56. };
  57. $(function () {
  58. _bindEvent();
  59. });
  60. })();