h5預(yù)覽pdf

背景

在h5中預(yù)覽pdf状植,原做法是直接location.href浊竟,但是內(nèi)嵌網(wǎng)頁(yè)在ios和android上的表現(xiàn)出入太大怨喘,因此選擇使用組件實(shí)現(xiàn),經(jīng)過(guò)多次試錯(cuò)振定,最終選擇了pdfh5官方文檔必怜。

直接上代碼

pdfview組件內(nèi)容

<template lang="pug">
.pdf-container 
    #pdf
</template>

<script lang="ts">
    import { defineComponent, onMounted } from 'vue';
    import { Toast } from 'vant';

    export default defineComponent({
        props: {
            pdfurl: {
                type: String,
                default: 'https://swsdl.vivo.com.cn/appstore/cloudtest/pdf/20220621/202206212026012891400036.pdf'
            }
        },
        setup(props) {
            const initPdf = () => {
                console.log('init pdf begain,  pdf url===', props.pdfurl);
                if (!props.pdfurl || props.pdfurl === 'null') {
                    Toast('報(bào)告文件不存在');
                    return;
                }

                // @ts-ignore
                new Pdfh5('#pdf', {
                    pdfurl: props.pdfurl
                });
            };

            onMounted(() => {
                initPdf();
            });
        }
    });
</script>

<style>
    .pdfjs {
        width: 100%;
        height: 100%;
        overflow: hidden;
        background: #fff;
        position: relative;
    }

    .pdfjs .viewerContainer {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        transition: all 0.3s;
    }

    .pdfjs .pdfViewer {
        position: relative;
        top: 0;
        left: 0;
        padding: 10px 8px;
    }

    .pdfjs .pdfViewer .pageContainer {
        width: 100%;
        margin: 0px auto 8px auto;
        position: relative;
        overflow: visible;
        -webkit-box-shadow: darkgrey 0px 1px 3px 0px;
        -moz-box-shadow: darkgrey 0px 1px 3px 0px;
        box-shadow: darkgrey 0px 1px 3px 0px;
        background-color: white;
        box-sizing: border-box;
    }

    .pdfjs .pdfViewer .pageContainer img {
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 100;
        /* user-select:none; */
    }

    .pdfjs .pageNum {
        padding: 0px 7px;
        height: 26px;
        position: absolute;
        top: 20px;
        left: 15px;
        z-index: 997;
        border-radius: 8px;
        transition: all 0.3s;
        display: none;
    }

    .pdfjs .pageNum-bg,
    .pdfjs .pageNum-num {
        width: 100%;
        height: 100%;
        line-height: 26px;
        text-align: center;
        position: absolute;
        top: 0px;
        left: 0px;
        color: #fff;
        border-radius: 8px;
        font-size: 16px;
    }

    .pdfjs .pageNum-bg {
        background: rgba(0, 0, 0, 0.5);
    }

    .pdfjs .pageNum-num {
        position: relative;
    }

    .pdfjs .pageNum span {
        color: #fff;
        font-size: 16px;
    }

    .pdfjs .loadingBar {
        position: absolute;
        width: 100%;
        z-index: 99;
        background: #fff !important;
        height: 4px;
        top: 0px;
        left: 0px;
        transition: all 0.3s;
    }

    .pdfjs .loadingBar .progress {
        background: #fff !important;
        position: absolute;
        top: 0;
        left: 0;
        width: 0%;
        height: 100%;
        overflow: hidden;
        transition: width 200ms;
    }

    .pdfjs .loadingBar .progress .glimmer {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: calc(100% + 150px);
        background: #7bcf34;
    }

    .pdfjs .backTop {
        width: 50px;
        height: 50px;
        line-height: 50px;
        text-align: center;
        position: absolute;
        bottom: 90px;
        right: 15px;
        font-size: 18px;
        z-index: 999;
        border-radius: 50%;
        background: rgba(0, 0, 0, 0.4)
            url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QAAAAAAAD5Q7t/AAAACXBIWXMAAAsSAAALEgHS3X78AAAA+klEQVRYw+2WUQ2DMBCG2TIBSJiESkACEpCAg83BcLBJmIQ5gClgDpiDby9tciGkoaUtZOESXuhdv7+X/pdm2dYC6IgX7Zh3THy+w9oN/rMASqBcE26iSA1XwCAEDIBKBc8F/KE/gB7IU8BbDXyJf2Z2tFFFAE8N6iRIi/jotXssuGn1FzhPrCu9BtCEhlcCrix5hbiYVSh46bKpELvcniO71Q51zWJ7ju3mUe9vzym7eR7Az57CbohTXBzAt9GknG9PoLY8KK4z6htLfeXTTXMZAfoZuWYWKC+YZWMAQuWZSP0k2wXsAnYB2xNwci1wGTKhO/COlLtu/ABVfTFsxwwYRgAAAABJRU5ErkJggg==)
            no-repeat center;
        background-size: 50% 50%;
        transition: all 0.3s;
        display: none;
    }

    .pdfjs .loadEffect {
        width: 100px;
        height: 100px;
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -50px;
        margin-left: -50px;
        z-index: 99;
        background: url(data:image/gif;base64,R0lGODlhgACAAKIAAP///93d3bu7u5mZmQAA/wAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFBQAEACwCAAIAfAB8AAAD/0i63P4wygYqmDjrzbtflvWNZGliYXiubKuloivPLlzReD7al+7/Eh5wSFQIi8hHYBkwHUmD6CD5YTJLz49USuVYraRsZ7vtar7XnQ1Kjpoz6LRHvGlz35O4nEPP2O94EnpNc2sef1OBGIOFMId/inB6jSmPdpGScR19EoiYmZobnBCIiZ95k6KGGp6ni4wvqxilrqBfqo6skLW2YBmjDa28r6Eosp27w8Rov8ekycqoqUHODrTRvXsQwArC2NLF29UM19/LtxO5yJd4Au4CK7DUNxPebG4e7+8n8iv2WmQ66BtoYpo/dvfacBjIkITBE9DGlMvAsOIIZjIUAixliv9ixYZVtLUos5GjwI8gzc3iCGghypQqrbFsme8lwZgLZtIcYfNmTJ34WPTUZw5oRxdD9w0z6iOpO15MgTh1BTTJUKos39jE+o/KS64IFVmsFfYT0aU7capdy7at27dw48qdS7eu3bt480I02vUbX2F/JxYNDImw4GiGE/P9qbhxVpWOI/eFKtlNZbWXuzlmG1mv58+gQ4seTbq06dOoU6vGQZJy0FNlMcV+czhQ7SQmYd8eMhPs5BxVdfcGEtV3buDBXQ+fURxx8oM6MT9P+Fh6dOrH2zavc13u9JXVJb520Vp8dvC76wXMuN5Sepm/1WtkEZHDefnzR9Qvsd9+/wi8+en3X0ntYVcSdAE+UN4zs7ln24CaLagghIxBaGF8kFGoIYV+Ybghh841GIyI5ICIFoklJsigihmimJOLEbLYIYwxSgigiZ+8l2KB+Ml4oo/w8dijjcrouCORKwIpnJIjMnkkksalNeR4fuBIm5UEYImhIlsGCeWNNJphpJdSTlkml1jWeOY6TnaRpppUctcmFW9mGSaZceYopH9zkjnjUe59iR5pdapWaGqHopboaYua1qije67GJ6CuJAAAIfkEBQUABAAsCgACAFcAMAAAA/9Iutz+ML5Ag7w46z0r5WAoSp43nihXVmnrdusrv+s332dt4Tyo9yOBUJD6oQBIQGs4RBlHySSKyczVTtHoidocPUNZaZAr9F5FYbGI3PWdQWn1mi36buLKFJvojsHjLnshdhl4L4IqbxqGh4gahBJ4eY1kiX6LgDN7fBmQEJI4jhieD4yhdJ2KkZk8oiSqEaatqBekDLKztBG2CqBACq4wJRi4PZu1sA2+v8C6EJexrBAD1AOBzsLE0g/V1UvYR9sN3eR6lTLi4+TlY1wz6Qzr8u1t6FkY8vNzZTxaGfn6mAkEGFDgL4LrDDJDyE4hEIbdHB6ESE1iD4oVLfLAqPETIsOODwmCDJlv5MSGJklaS6khAQAh+QQFBQAEACwfAAIAVwAwAAAD/0i63P5LSAGrvTjrNuf+YKh1nWieIumhbFupkivPBEzR+GnnfLj3ooFwwPqdAshAazhEGUXJJIrJ1MGOUamJ2jQ9QVltkCv0XqFh5IncBX01afGYnDqD40u2z76JK/N0bnxweC5sRB9vF34zh4gjg4uMjXobihWTlJUZlw9+fzSHlpGYhTminKSepqebF50NmTyor6qxrLO0L7YLn0ALuhCwCrJAjrUqkrjGrsIkGMW/BMEPJcphLgDaABjUKNEh29vdgTLLIOLpF80s5xrp8ORVONgi8PcZ8zlRJvf40tL8/QPYQ+BAgjgMxkPIQ6E6hgkdjoNIQ+JEijMsasNY0RQix4gKP+YIKXKkwJIFF6JMudFEAgAh+QQFBQAEACw8AAIAQgBCAAAD/kg0PPowykmrna3dzXvNmSeOFqiRaGoyaTuujitv8Gx/661HtSv8gt2jlwIChYtc0XjcEUnMpu4pikpv1I71astytkGh9wJGJk3QrXlcKa+VWjeSPZHP4Rtw+I2OW81DeBZ2fCB+UYCBfWRqiQp0CnqOj4J1jZOQkpOUIYx/m4oxg5cuAaYBO4Qop6c6pKusrDevIrG2rkwptrupXB67vKAbwMHCFcTFxhLIt8oUzLHOE9Cy0hHUrdbX2KjaENzey9Dh08jkz8Tnx83q66bt8PHy8/T19vf4+fr6AP3+/wADAjQmsKDBf6AOKjS4aaHDgZMeSgTQcKLDhBYPEswoA1BBAgAh+QQFBQAEACxOAAoAMABXAAAD7Ei6vPOjyUkrhdDqfXHm4OZ9YSmNpKmiqVqykbuysgvX5o2HcLxzup8oKLQQix0UcqhcVo5ORi+aHFEn02sDeuWqBGCBkbYLh5/NmnldxajX7LbPBK+PH7K6narfO/t+SIBwfINmUYaHf4lghYyOhlqJWgqDlAuAlwyBmpVnnaChoqOkpaanqKmqKgGtrq+wsbA1srW2ry63urasu764Jr/CAb3Du7nGt7TJsqvOz9DR0tPU1TIA2ACl2dyi3N/aneDf4uPklObj6OngWuzt7u/d8fLY9PXr9eFX+vv8+PnYlUsXiqC3c6PmUUgAACH5BAUFAAQALE4AHwAwAFcAAAPpSLrc/m7IAau9bU7MO9GgJ0ZgOI5leoqpumKt+1axPJO1dtO5vuM9yi8TlAyBvSMxqES2mo8cFFKb8kzWqzDL7Xq/4LB4TC6bz1yBes1uu9uzt3zOXtHv8xN+Dx/x/wJ6gHt2g3Rxhm9oi4yNjo+QkZKTCgGWAWaXmmOanZhgnp2goaJdpKGmp55cqqusrZuvsJays6mzn1m4uRAAvgAvuBW/v8GwvcTFxqfIycA3zA/OytCl0tPPO7HD2GLYvt7dYd/ZX99j5+Pi6tPh6+bvXuTuzujxXens9fr7YPn+7egRI9PPHrgpCQAAIfkEBQUABAAsPAA8AEIAQgAAA/lIutz+UI1Jq7026h2x/xUncmD5jehjrlnqSmz8vrE8u7V5z/m5/8CgcEgsGo/IpHLJbDqf0Kh0ShBYBdTXdZsdbb/Yrgb8FUfIYLMDTVYz2G13FV6Wz+lX+x0fdvPzdn9WeoJGAYcBN39EiIiKeEONjTt0kZKHQGyWl4mZdREAoQAcnJhBXBqioqSlT6qqG6WmTK+rsa1NtaGsuEu6o7yXubojsrTEIsa+yMm9SL8osp3PzM2cStDRykfZ2tfUtS/bRd3ewtzV5pLo4eLjQuUp70Hx8t9E9eqO5Oku5/ztdkxi90qPg3x2EMpR6IahGocPCxp8AGtigwQAIfkEBQUABAAsHwBOAFcAMAAAA/9Iutz+MMo36pg4682J/V0ojs1nXmSqSqe5vrDXunEdzq2ta3i+/5DeCUh0CGnF5BGULC4tTeUTFQVONYAs4CfoCkZPjFar83rBx8l4XDObSUL1Ott2d1U4yZwcs5/xSBB7dBMBhgEYfncrTBGDW4WHhomKUY+QEZKSE4qLRY8YmoeUfkmXoaKInJ2fgxmpqqulQKCvqRqsP7WooriVO7u8mhu5NacasMTFMMHCm8qzzM2RvdDRK9PUwxzLKdnaz9y/Kt8SyR3dIuXmtyHpHMcd5+jvWK4i8/TXHff47SLjQvQLkU+fG29rUhQ06IkEG4X/Rryp4mwUxSgLL/7IqFETB8eONT6ChCFy5ItqJomES6kgAQAh+QQFBQAEACwKAE4AVwAwAAAD/0i63A4QuEmrvTi3yLX/4MeNUmieITmibEuppCu3sDrfYG3jPKbHveDktxIaF8TOcZmMLI9NyBPanFKJp4A2IBx4B5lkdqvtfb8+HYpMxp3Pl1qLvXW/vWkli16/3dFxTi58ZRcChwIYf3hWBIRchoiHiotWj5AVkpIXi4xLjxiaiJR/T5ehoomcnZ+EGamqq6VGoK+pGqxCtaiiuJVBu7yaHrk4pxqwxMUzwcKbyrPMzZG90NGDrh/JH8t72dq3IN1jfCHb3L/e5ebh4ukmxyDn6O8g08jt7tf26ybz+m/W9GNXzUQ9fm1Q/APoSWAhhfkMAmpEbRhFKwsvCsmosRIHx444PoKcIXKkjIImjTzjkQAAIfkEBQUABAAsAgA8AEIAQgAAA/VIBNz+8KlJq72Yxs1d/uDVjVxogmQqnaylvkArT7A63/V47/m2/8CgcEgsGo/IpHLJbDqf0Kh0Sj0FroGqDMvVmrjgrDcTBo8v5fCZki6vCW33Oq4+0832O/at3+f7fICBdzsChgJGeoWHhkV0P4yMRG1BkYeOeECWl5hXQ5uNIAOjA1KgiKKko1CnqBmqqk+nIbCkTq20taVNs7m1vKAnurtLvb6wTMbHsUq4wrrFwSzDzcrLtknW16tI2tvERt6pv0fi48jh5h/U6Zs77EXSN/BE8jP09ZFA+PmhP/xvJgAMSGBgQINvEK5ReIZhQ3QEMTBLAAAh+QQFBQAEACwCAB8AMABXAAAD50i6DA4syklre87qTbHn4OaNYSmNqKmiqVqyrcvBsazRpH3jmC7yD98OCBF2iEXjBKmsAJsWHDQKmw571l8my+16v+CweEwum8+hgHrNbrvbtrd8znbR73MVfg838f8BeoB7doN0cYZvaIuMjY6PkJGSk2gClgJml5pjmp2YYJ6dX6GeXaShWaeoVqqlU62ir7CXqbOWrLafsrNctjIDwAMWvC7BwRWtNsbGFKc+y8fNsTrQ0dK3QtXAYtrCYd3eYN3c49/a5NVj5eLn5u3s6e7x8NDo9fbL+Mzy9/T5+tvUzdN3Zp+GBAAh+QQJBQAEACwCAAIAfAB8AAAD/0i63P4wykmrvTjrzbv/YCiOZGmeaKqubOu+cCzPdArcQK2TOL7/nl4PSMwIfcUk5YhUOh3M5nNKiOaoWCuWqt1Ou16l9RpOgsvEMdocXbOZ7nQ7DjzTaeq7zq6P5fszfIASAYUBIYKDDoaGIImKC4ySH3OQEJKYHZWWi5iZG0ecEZ6eHEOio6SfqCaqpaytrpOwJLKztCO2jLi1uoW8Ir6/wCHCxMG2x7muysukzb230M6H09bX2Nna29zd3t/g4cAC5OXm5+jn3Ons7eba7vHt2fL16tj2+QL0+vXw/e7WAUwnrqDBgwgTKlzIsKHDh2gGSBwAccHEixAvaqTYcFCjRoYeNyoM6REhyZIHT4o0qPIjy5YTTcKUmHImx5cwE85cmJPnSYckK66sSAAj0aNIkypdyrSp06dQo0qdSrWq1atYs2rdyrWr169gwxZJAAA7)
            no-repeat center;
        background-size: 30% 30%;
        transition: all 0.3s;
    }
    .pdfjs .pdfViewer .pageContainer img.pdfLogo {
        /* user-select:none; */
        position: absolute;
        z-index: 101;
    }
    .pdfjs .textLayer {
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        overflow: hidden;
        opacity: 0.2;
        line-height: 1;
        z-index: 101;
    }

    .pdfjs .textLayer > span {
        color: transparent;
        position: absolute;
        white-space: pre;
        cursor: text;
        transform-origin: 0% 0%;
        transform: translate(-99px, -80px) scaleX(1) !important;
    }

    .pdfjs .textLayer .highlight {
        margin: -1px;
        padding: 1px;
        background-color: rgba(180, 0, 170, 1);
        border-radius: 4px;
    }

    .pdfjs .textLayer .highlight.begin {
        border-radius: 4px 0px 0px 4px;
    }

    .pdfjs .textLayer .highlight.end {
        border-radius: 0px 4px 4px 0px;
    }

    .pdfjs .textLayer .highlight.middle {
        border-radius: 0px;
    }

    .pdfjs .textLayer .highlight.selected {
        background-color: rgba(0, 100, 0, 1);
    }

    .pdfjs .textLayer ::selection {
        background: rgba(0, 0, 255, 1);
    }

    .pdfjs .textLayer .endOfContent {
        display: block;
        position: absolute;
        left: 0px;
        top: 100%;
        right: 0px;
        bottom: 0px;
        z-index: -1;
        cursor: default;
        /* user-select: none; */
    }

    .pdfjs .textLayer .endOfContent.active {
        top: 0px;
    }
</style>

<style lang="less" scoped>
    .pdf-container {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
    }
</style>

index.html

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta http-equiv="Expires" content="0" />
        <meta http-equiv="Pragma" content="no-cache" />
        <meta http-equiv="Cache-control" content="no-cache" />
        <meta http-equiv="Cache" content="no-cache" />
        <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, viewport-fit=cover" />
        <title>報(bào)告詳情</title>
        <link rel="icon" href="/favicon.ico" />

        <script src="/pdf.js" type="text/javascript" charset="utf-8"></script>
        <script src="/pdf.worker.js" type="text/javascript" charset="utf-8"></script>
        <script src="https://code.jquery.com/jquery-3.6.1.min.js"></script>
        <script src="/pdfh5.js" type="text/javascript" charset="utf-8"></script>
    </head>
    <body>
        <div id="app"></div>
        <script type="module" src="./main.ts"></script>
    </body>
</html>

頁(yè)面調(diào)用就很簡(jiǎn)單了

<template lang="pug">
div
    PdfViewer(:pdfurl="pdfurl")
</template>

結(jié)果

完美實(shí)現(xiàn)兼容,目前還未發(fā)現(xiàn)問(wèn)題后频。

注意事項(xiàng)

詳細(xì)文檔和需要下載的文件請(qǐng)點(diǎn)擊最上方的官方文檔梳庆,這里僅做接入示例參考。
在index.html里引入徘郭,主要是因?yàn)槲募^(guò)大靠益,打包的時(shí)候會(huì)報(bào)警丧肴。
我的項(xiàng)目使用的是vite+vue3残揉,如果用vue2的話記得注意區(qū)分。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末芋浮,一起剝皮案震驚了整個(gè)濱河市抱环,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌纸巷,老刑警劉巖镇草,帶你破解...
    沈念sama閱讀 216,692評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異瘤旨,居然都是意外死亡梯啤,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)存哲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)因宇,“玉大人,你說(shuō)我怎么就攤上這事祟偷〔旎” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,995評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵修肠,是天一觀的道長(zhǎng)贺辰。 經(jīng)常有香客問(wèn)我,道長(zhǎng)嵌施,這世上最難降的妖魔是什么饲化? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,223評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮吗伤,結(jié)果婚禮上滓侍,老公的妹妹穿的比我還像新娘。我一直安慰自己牲芋,他們只是感情好撩笆,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,245評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布捺球。 她就那樣靜靜地躺著,像睡著了一般夕冲。 火紅的嫁衣襯著肌膚如雪氮兵。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,208評(píng)論 1 299
  • 那天歹鱼,我揣著相機(jī)與錄音泣栈,去河邊找鬼。 笑死弥姻,一個(gè)胖子當(dāng)著我的面吹牛南片,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播庭敦,決...
    沈念sama閱讀 40,091評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼疼进,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼阿趁!你這毒婦竟也來(lái)了聚请?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,929評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤涡拘,失蹤者是張志新(化名)和其女友劉穎疼电,沒(méi)想到半個(gè)月后嚼锄,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,346評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蔽豺,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,570評(píng)論 2 333
  • 正文 我和宋清朗相戀三年区丑,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片修陡。...
    茶點(diǎn)故事閱讀 39,739評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡沧侥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出濒析,到底是詐尸還是另有隱情正什,我是刑警寧澤,帶...
    沈念sama閱讀 35,437評(píng)論 5 344
  • 正文 年R本政府宣布号杏,位于F島的核電站婴氮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏盾致。R本人自食惡果不足惜主经,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,037評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望庭惜。 院中可真熱鬧罩驻,春花似錦、人聲如沸护赊。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,677評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至节吮,卻和暖如春抽高,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背透绩。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,833評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工翘骂, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人帚豪。 一個(gè)月前我還...
    沈念sama閱讀 47,760評(píng)論 2 369
  • 正文 我出身青樓碳竟,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親狸臣。 傳聞我的和親對(duì)象是個(gè)殘疾皇子莹桅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,647評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容