也曾年轻 发表于 2025-12-30 09:27

连环画 --- 儒林外史

<meta charset="utf-8">
<meta name="referrer" content="never" />
<style type="text/css">
:root        {--w:540px; --h:864px;}
#oBlk        {
        width:960px;height:920px;
        background-image: url(https://z3.ax1x.com/2021/09/16/4nMjJA.gif);
        display: grid;
        place-items:center;position:relative;
        grid-template-rows: 720px 200px;
        grid-template-columns:100%;
        box-shadow:3px 3px 8px darkgray;
        overflow:hidden;border-radius:24px;
        font-size:12px;padding:10px;
        margin-left: calc(50% - 561px);
}
#cataFrame        {width:900px;height:180px;border:6px white groove;overflow:hidden;border-radius:24px;position:relative;}
/***************************************************************************************************/
#imgHold img        {width:var(--w);height:var(--h);transform-origin:0 0; transform:rotate(-90deg) translateX(calc(-1 * var(--w)));position:absolute;top:0px;}
#imgHold        {height:var(--w);position:absolute;left:0px;}
#storyBookBlk        {
        width:var(--h);
        height:var(--w);
        overflow:hidden;
        border-radius:24px;
        box-shadow:4px 4px 10px black;
        position:relative;
}       
#targetD        {width:900px;height:640px;border:6px white groove;place-items:center;overflow:hidden;border-radius:24px;}
#gName        {font:bold 2.5em 隶书;color:brown;margin:12px;}
#pichold        {height:190px;position:absolute;left:0px;top:4px;animation: mleft 30.14s linear infinite paused;}
#pichold img        {width:270px;height:170px;margin-right:4px;cursor:pointer;float:left;}
#pichold:hover        {animation-play-state: running;}
@keyframes        mleft        {to {left:-3014px;}}
</style>
<div id="oBlk">
        <div id="targetD">
                <div id="gName"></div>
                <div id="storyBookBlk">
                        <div id="imgHold">
                        <!--
https://mp.weixin.qq.com/s/fsfRz2TsNCGv3XVPAJXtRA
                        -->
                        </div>
                </div>
        </div>
        <div id="cataFrame"><div id="pichold"></div></div>
</div>
<script>
let hVal = parseInt(getComputedStyle(document.documentElement).getPropertyValue('--h'));

var sf1 = document.createElement('script');
sf1.type = 'text/javascript';
sf1.src = "https://cccimg.com/down.php/3902ff752405b0a1dd33c326a6b2f827.js";
//sf1.src='script/儒林外史pic.js';

sf1.charset = "utf-8";
document.body.appendChild(sf1);
sf1.onload = () => {
gName.innerHTML = gsName;
imgs.forEach((pic,idx) => {
        let imgObj = document.createElement('img');
        imgObj.src = pic;
        imgObj.dataset.idx = idx % gsName.length;
        pichold.appendChild(imgObj);
});
let imgObj = pichold.querySelector('img');
let imgObjWidth = imgObj.clientWidth + parseInt(getComputedStyle(imgObj).marginLeft) + parseInt(getComputedStyle(imgObj).marginRight);

pichold.style.width = imgs.length *imgObjWidth + 'px';
//        点击封面图片的动作
pichold.querySelectorAll('img').forEach( imgObj => {
        imgObj.onclick = () => {
                let selIdx = imgObj.dataset.idx;
                gName.innerHTML = gsName;
                loadStory(selIdx);
        }
});
        let loadStory = (idx) =>        {
                imgHold.innerHTML = '';
                imgHold.style.left = '0px';
                imgHold.style.width = pics.length * hVal + 'px';;
                pics.forEach((pic, idx) => {
                        let imgObj = document.createElement('img');
                        imgObj.src = pic;pic.alt='';
                        imgObj.style.left = hVal * idx + 'px';
                        imgHold.appendChild(imgObj);
                });
                       
                let numPic = imgHold.querySelectorAll('img');

                imgHold.onmousedown = (ev) => {
                        let styleLeft = parseInt(imgHold.style.left);
                        let sbOffsetWidth = parseInt(storyBookBlk.offsetWidth);
                        let imgOffsetLeft = parseInt(imgHold.offsetLeft);
                        if(ev.button === 0)        {
                                if(styleLeft > ((1 - numPic.length) * sbOffsetWidth))        imgHold.style.left = (imgOffsetLeft -= sbOffsetWidth) + 'px';
                                else imgHold.style.left = '0px';
                        }
                        else if(ev.button === 2)        {
                                if(imgOffsetLeft === 0)imgHold.style.left = (1 - numPic.length) * sbOffsetWidth + 'px';
                                else imgHold.style.left = (imgOffsetLeft += sbOffsetWidth) + 'px';
                        }

                }
               
                oBlk.addEventListener('contextmenu', function(event) {
                        event.preventDefault();
                });
        }
        loadStory(0);
}
</script>

梦江南 发表于 2025-12-30 10:17

儒林外史有11本,真的好有耐心。有的还真的不知道。

梦江南 发表于 2025-12-30 10:18

欣赏老师好帖,辛苦了!{:4_187:}

也曾年轻 发表于 2025-12-30 10:39

梦江南 发表于 2025-12-30 10:17
儒林外史有11本,真的好有耐心。有的还真的不知道。

是这套连环画选了其中的11个故事,整本小说有56回。

也曾年轻 发表于 2025-12-30 10:39

梦江南 发表于 2025-12-30 10:18
欣赏老师好帖,辛苦了!

谢谢支持!

梦江南 发表于 2025-12-30 11:22

也曾年轻 发表于 2025-12-30 10:39
是这套连环画选了其中的11个故事,整本小说有56回。

11本连环画还不是儒林外史的全部啊!刚才看了一本凤四老爹。

也曾年轻 发表于 2025-12-30 12:10

梦江南 发表于 2025-12-30 11:22
11本连环画还不是儒林外史的全部啊!刚才看了一本凤四老爹。

《儒林外史》是清代小说家吴敬梓创作的长篇讽刺小说,全书共 五十六回。它并没有严格划分成若干个独立的“故事”,而是采用连环短篇式结构(也称“集锦式结构”),通过人物的登场与退场,将多个相对独立又相互关联的情节串联起来,形成一部整体连贯的长篇小说。

虽然全书没有明确标出“共有多少个故事”,但根据内容和人物主线,学术界通常认为书中包含了二十多个主要故事单元或情节段落。

网上AI问来的

杨帆 发表于 2025-12-30 13:23

辛苦了~谢谢也曾年轻老师精彩分享{:4_180:}

也曾年轻 发表于 2025-12-30 15:22

杨帆 发表于 2025-12-30 13:23
辛苦了~谢谢也曾年轻老师精彩分享

谢谢支持!

红影 发表于 2025-12-30 21:36

又是成套的小人书,这个太好了。感谢也曾年轻带来的好东西{:4_199:}

也曾年轻 发表于 2025-12-30 21:58

红影 发表于 2025-12-30 21:36
又是成套的小人书,这个太好了。感谢也曾年轻带来的好东西

谢谢欣赏支持!

红影 发表于 2025-12-30 22:00

这套每个都有封面呢,也都有内容简介,真好,忍不住先看了两本{:4_199:}

也曾年轻 发表于 2025-12-30 22:24

红影 发表于 2025-12-30 22:00
这套每个都有封面呢,也都有内容简介,真好,忍不住先看了两本

以前的连环画帖子有的也有封面页,只是觉得有点重复就舍弃了,现在看加上效果也还行。
页: [1]
查看完整版本: 连环画 --- 儒林外史