feat(editor): 新增视频上传功能并优化编辑器体验
- 添加视频上传功能,支持提取视频第一帧作为封面 - 优化图片和视频上传的数量限制检查 - 修复编辑器内容为空判断逻辑,增加视频元素检测 - 改进链接插入功能,自动填充选中文本 - 调整表情选择插入方式,使用execCommand实现 - 优化附件提取逻辑,支持视频元素解析 - 添加编辑器点击事件处理,更新选区状态 - 修复样式问题,调整按钮悬停效果
This commit is contained in:
@@ -9,8 +9,10 @@
|
||||
</div>
|
||||
<div v-else class="slideshow-box">
|
||||
<div class="tab-list flexacenter">
|
||||
<div class="tab-item newest" :class="{'pitch': postsTab == 'newest'}" @click="tabPostsItem('newest')">最新</div>
|
||||
<div class="tab-item essence" :class="{'pitch': postsTab == 'essence'}" @click="tabPostsItem('essence')">精华</div>
|
||||
<div class="tab-item newest" :class="{'pitch': postsTab == 'newest'}" @click="tabPostsItem('newest')">最新
|
||||
</div>
|
||||
<div class="tab-item essence" :class="{'pitch': postsTab == 'essence'}" @click="tabPostsItem('essence')">精华
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="slideshow-content flexflex">
|
||||
@@ -18,10 +20,13 @@
|
||||
<div class="newest-side-box side-box">
|
||||
<img class="bounding" src="/img/bounding-circle-green.svg" alt="" />
|
||||
<div class="box">
|
||||
<a v-for="(item, index) in latestList" :key="index" class="item flexacenter vuehide" :href="'/details/' + item.uniqid" target="_blank">
|
||||
<div class="dot dot-green"></div>
|
||||
<div class="text one-line-display">{{ item.title || item.content }}</div>
|
||||
</a>
|
||||
<template v-for="(item, index) in latestList" :key="index">
|
||||
<a v-if="item.title || item.content" class="item flexacenter vuehide"
|
||||
:href="'/details/' + item.uniqid" target="_blank">
|
||||
<div class="dot dot-green"></div>
|
||||
<div class="text one-line-display">{{ item.title || item.content }}</div>
|
||||
</a>
|
||||
</template>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -29,11 +34,15 @@
|
||||
<div class="essence-side-box side-box">
|
||||
<img class="bounding" src="/img/bounding-circle-blue.svg" alt="" />
|
||||
<div class="box">
|
||||
<a v-for="(item, index) in topList" :key="index" class="item flexacenter vuehide" :href="'/details/' + item.uniqid" target="_blank">
|
||||
<div class="dot"></div>
|
||||
<div class="text one-line-display">{{ item.title || item.content }}</div>
|
||||
</a>
|
||||
<template v-for="(item, index) in topList" :key="index">
|
||||
<a v-if="item.title || item.content" class="item flexacenter vuehide"
|
||||
:href="'/details/' + item.uniqid" target="_blank">
|
||||
<div class="dot"></div>
|
||||
<div class="text one-line-display">{{ item.title || item.content }}</div>
|
||||
</a>
|
||||
</template>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user