天在博客中加了个新的功能,直接复制图片然后黏贴上传到服务器。
之前是自己弄的markdown编辑器,很多功能不完善,刚开始加了个插入图片的按钮,现在能直接复制图片方便多了。
目前只支持chrome浏览器,哈哈,感觉chrome是最好用的浏览器。
主要原理是利用paste事件,然后拿到里面的图片数据上传到服务器。
下面贴代码
<textarea id="content" />
有个编辑的文本框,然后监听parse事件
document.querySelector('#content').addEventListener('paste', function(event) {
var isChrome=false;
if (event.clipboardData || event.originalEvent) {
//not for ie11 某些chrome版本使用的是event.originalEvent
var clipboardData=(event.clipboardData || event.originalEvent.clipboardData);
if (clipboardData.items) {
// for chrome
var items=clipboardData.items, len=items.length, blob=null;
isChrome=true;
for (var i=0; i < len; i++) {
if (items[i].type.indexOf("image") !==-1) {
//getAsFile() 此方法只是living standard firefox ie11 并不支持
blob=items[i].getAsFile();
}
绍HTML5中的一个新增元素——canvas元素以及伴随这个元素而来的一套编程接口——canvas API。
使用canvas API可以在页面上绘制出任何你想要的、非常漂亮的图形与图像,创造出更加丰富多彩、赏心悦目的Web页面。
通过阅读,您可以:
掌握canvas元素的基本概念
学会如何在页面上放置一个canvas元素
学会如何使用canvas元素绘制出一个简单矩形
掌握使用路径的方法,能够利用路径绘制出圆形与多边形
掌握渐变图形的绘制方法,学会图形变形、图形缩放、图形组合以及给图形绘制阴影的方法
掌握在canvas画布中使用图像的方法
掌握如何在画布中绘制文字,给文字加上边框的方法
掌握如何保存及恢复绘图状态
canvas的基础知识
HTML5中的canvas有很多功能,这里只介绍HTML5中canvas的一些基础知识,
并展示一些可以使用画布元素实现的实用的内容,例如处理来自画布中的一幅图像的单个像素。
canvas的由来
canvas的概念最初是由苹果公司提出的,
用于在Mac OS X WebKit中创建控制板部件(Dashboard Widget)。
在canvas出现之前,开发人员若要在浏览器中使用绘图API,
只能使用Adobe的Flash和SVG(可伸缩矢量图形)插件,或者只有IE才支持的VML(矢量标记语言),
以及JavaScript中的一些技术。假设我们要在没有canvas元素的条件下绘制一条对角线,
此时如果没有一套二维绘图API的话,这会是一项相当复杂的工作。
HTML5中的canvas就能够提供这样的功能,对浏览器端来说这个功能非常有用,
因此canvas被纳入了HTML5规范。
最靠谱的WEB前端教程——整整140集,全程干货无废话,学完变大佬!
构建现代网页时,图片是不可或缺的元素之一。它们能够增强视觉吸引力,帮助传达信息,并提升用户体验。然而,如果图片没有得到适当的优化,它们可能会显著拖慢网站的加载速度,影响用户体验和搜索引擎优化(SEO)。在本文中,我们将探讨不同的图片格式,并提供优化这些格式的策略和示例。
根据图片内容和用途选择最合适的格式。例如,对于网页上的照片,JPEG可能是最佳选择,因为它在保持相对较小的文件大小的同时提供了良好的图像质量。对于需要透明背景的图标,PNG可能更合适。
使用工具或服务压缩图片,减少文件大小。例如,使用在线工具如 TinyPNG 来压缩PNG文件,或者使用 Adobe Photoshop 的“存储为Web所用格式”功能来减小JPEG文件的大小。
根据需要在网页中显示的大小调整图片尺寸。不要上传超大的图片然后依赖浏览器缩放,因为这会导致不必要的加载时间。
通过 HTML5 的 <picture> 元素或 srcset 和 sizes 属性,可以为不同屏幕尺寸提供不同大小的图片。
对于非视口内的图片,可以使用延迟加载(lazy loading)技术。这样,只有当用户滚动到图片位置时,图片才会加载。
使用内容分发网络(CDN)来分发图片,可以减少加载时间,因为图片会从离用户最近的服务器加载。
假设你有一个高分辨率的照片,原始尺寸为4000x3000像素,文件大小为5MB。如果这张照片要在网页上以800x600像素的尺寸展示,那么:
优化后的图片可能只有100KB左右,大大减少了加载时间。
如果你有一个图标,需要在网页上以多种尺寸展示,并且需要透明背景:
图片优化对于提高网页加载速度至关重要。通过选择合适的图片格式,压缩文件大小,调整尺寸,使用响应式图片技术,实现延迟加载,以及利用CDN,可以确保图片在不牺牲质量的情况下快速加载。这不仅能提升用户体验,还能对SEO产生积极影响。
*请认真填写需求信息,我们会在24小时内与您取得联系。