fix(submit): render slide cover preview as a real swiper
Replace the static first-image preview with the reference theme's .new-swiper contract (loop + autoplay + prev/next + pagination) in both the server-rendered box and the JS re-render, and run auto_fun for slide covers so new_swiper initializes them.
This commit is contained in:
1 parent
d0c6c3e431
commit
b7f5523874
3 files changed
+54
-5
No files matched your search
@@ -436,10 +436,21 @@
|
||||
if (t === 'image' && d.url) {
|
||||
html = '<img src="' + escapeHtml(d.url) + '" alt="">';
|
||||
} else if (t === 'slide' && Array.isArray(d) && d[0] && d[0].url) {
|
||||
// 与参考主题一致:幻灯片封面渲染真实 swiper,由 auto_fun 里的 new_swiper 初始化。
|
||||
var slideImgs = d
|
||||
.filter(function (item) { return item && item.url; })
|
||||
.map(function (item) {
|
||||
return '<div class="swiper-slide"><img src="' + escapeHtml(item.url) + '" alt=""></div>';
|
||||
})
|
||||
.join('');
|
||||
html =
|
||||
'<img src="' +
|
||||
escapeHtml(d[0].url) +
|
||||
'" alt=""><span class="featured-type-badge"><i class="fa fas fa-image"></i></span>';
|
||||
'<div class="new-swiper scale-height" data-loop="true" data-autoplay="true" data-interval="2000" style="--scale-height:50%;">' +
|
||||
'<div class="swiper-wrapper">' + slideImgs + '</div>' +
|
||||
'<div class="swiper-button-prev"></div>' +
|
||||
'<div class="swiper-button-next"></div>' +
|
||||
'<div class="swiper-pagination"></div>' +
|
||||
'</div>' +
|
||||
'<span class="featured-type-badge"><i class="fa fas fa-image"></i></span>';
|
||||
} else if (t === 'video') {
|
||||
html =
|
||||
'<div class="new-dplayer dplayer-scale-height" style="--scale-height:50%;" video-url="' +
|
||||
@@ -453,7 +464,7 @@
|
||||
}
|
||||
this.destroyFeaturedPlayer(preview);
|
||||
preview.innerHTML = html;
|
||||
if (t === 'video' && typeof window.auto_fun === 'function') {
|
||||
if ((t === 'video' || t === 'slide') && typeof window.auto_fun === 'function') {
|
||||
window.auto_fun();
|
||||
}
|
||||
var clearBtn = qs('[data-featured-action="close"]');
|
||||
|
||||
Reference in new issue
Block a user