{"id":2719,"date":"2023-10-26T08:59:18","date_gmt":"2023-10-26T00:59:18","guid":{"rendered":"https:\/\/bookmark.tw\/?p=2719"},"modified":"2025-05-22T23:00:32","modified_gmt":"2025-05-22T15:00:32","slug":"sharing-ability","status":"publish","type":"post","link":"https:\/\/xinliceyan.org\/zh\/sharing-ability","title":{"rendered":"\u5206\u4eab\u80fd\u529b\u7ebf\u4e0a\u514d\u8d39\u6d4b\u9a8c\uff086\u9898\uff09"},"content":{"rendered":"\n<!-- \u7d50\u69cb (HTML) -->\n<div class=\"sz-quiz-container\" id=\"szQuizContainer\">\n    <!-- \u5f15\u5c0e\u9801 -->\n    <div class=\"sz-page sz-active\" data-page=\"intro\">\n        <header class=\"sz-intro-section\">\n            <h2 class=\"sz-intro-title\">\u5206\u4eab\u80fd\u529b\u6e2c\u9a57<\/h2>\n            <p class=\"sz-intro-subtitle\">\u63a2\u7d22\u60a8\u7684\u5206\u4eab\u89c0\u5ff5\uff0c\u4e86\u89e3\u60a8\u7684\u4f54\u6709\u6b32\u7a0b\u5ea6<\/p>\n        <\/header>\n\n        <main class=\"sz-features-grid\">\n            <article class=\"sz-feature-card\">\n                <div class=\"sz-feature-icon\">\ud83e\udd1d<\/div>\n                <h3 class=\"sz-feature-title\">\u6df1\u5ea6\u5206\u6790<\/h3>\n                <p class=\"sz-feature-desc\">\u901a\u904e6\u500b\u7cbe\u5fc3\u8a2d\u8a08\u7684\u554f\u984c\uff0c\u6df1\u5165\u4e86\u89e3\u60a8\u7684\u5206\u4eab\u5fc3\u7406<\/p>\n            <\/article>\n            \n            <article class=\"sz-feature-card\">\n                <div class=\"sz-feature-icon\">\ud83d\udcca<\/div>\n                <h3 class=\"sz-feature-title\">\u8996\u89ba\u5316\u7d50\u679c<\/h3>\n                <p class=\"sz-feature-desc\">\u6e05\u6670\u7684\u5716\u8868\u5c55\u793a\uff0c\u8b93\u60a8\u4e00\u76ee\u4e86\u7136\u5730\u770b\u5230\u6e2c\u9a57\u7d50\u679c<\/p>\n            <\/article>\n\n            <article class=\"sz-feature-card\">\n                <div class=\"sz-feature-icon\">\ud83d\udca1<\/div>\n                <h3 class=\"sz-feature-title\">\u5c08\u696d\u5efa\u8b70<\/h3>\n                <p class=\"sz-feature-desc\">\u57fa\u65bc\u7d50\u679c\u63d0\u4f9b\u500b\u4eba\u5316\u7684\u5206\u4eab\u80fd\u529b\u63d0\u5347\u5efa\u8b70<\/p>\n            <\/article>\n        <\/main>\n\n        <section>\n            <p>\u5206\u4eab\u662f\u69cb\u5efa\u4e00\u7a2e\u80fd\u5920\u5f15\u8d77\u96c6\u9ad4\u6210\u54e1\u5171\u6709\u7684\u5fc3\u7406\u6216\u751f\u7406\u6109\u6085\u7684\u6d3b\u52d5\uff0c\u4e3b\u8981\u5305\u62ec\u7269\u8cea\u5206\u4eab\u548c\u7cbe\u795e\u5206\u4eab\u3002\u73fe\u4ee3\u793e\u6703\u662f\u4e00\u500b\u5206\u4eab\u7684\u793e\u6703\uff0c\u53ea\u6709\u5206\u4eab\u7684\u793e\u6703\u624d\u662f\u548c\u8ae7\u7684\u793e\u6703\u3002<\/p>\n            <p>\u5982\u679c\u4f60\u6709\u4e00\u9ede\u5feb\u6a02\uff0c\u8b93\u66f4\u591a\u7684\u4eba\u4f86\u5171\u540c\u5206\u4eab\uff0c\u4f60\u5c31\u6703\u5f97\u5230\u8d8a\u4f86\u8d8a\u591a\u7684\u5feb\u6a02\u3002\u4f60\u662f\u5426\u64c1\u6709\u5206\u4eab\u7684\u89c0\u5ff5\u5462\uff1f<\/p>\n            <button class=\"sz-btn sz-btn-center\" data-action=\"start-quiz\">\u958b\u59cb\u6e2c\u9a57<\/button>\n        <\/section>\n    <\/div>\n\n    <!-- \u6e2c\u9a57\u9801 -->\n    <div class=\"sz-page\" data-page=\"quiz\">\n        <header>\n            <h2>\u5206\u4eab\u80fd\u529b\u6e2c\u9a57<\/h2>\n            <div class=\"sz-progress-container\">\n                <div class=\"sz-progress-info\">\n                    <span class=\"sz-progress-text\">\u9032\u5ea6<\/span>\n                    <span class=\"sz-progress-text\" data-progress-text>\u554f\u984c 1 \/ 6<\/span>\n                <\/div>\n                <div class=\"sz-progress-bar\">\n                    <div class=\"sz-progress-fill\" data-progress-fill><\/div>\n                <\/div>\n            <\/div>\n        <\/header>\n\n        <main>\n            <div class=\"sz-question-container\" data-question-container>\n                <!-- \u554f\u984c\u5c07\u7531 JavaScript \u52d5\u614b\u63d2\u5165 -->\n            <\/div>\n\n            <nav class=\"sz-navigation\">\n                <button class=\"sz-btn sz-btn-secondary\" data-action=\"prev-question\" style=\"display: none;\">\u4e0a\u4e00\u984c<\/button>\n            <\/nav>\n        <\/main>\n    <\/div>\n\n    <!-- \u7d50\u679c\u9801 -->\n    <div class=\"sz-page\" data-page=\"results\">\n        <header>\n            <h2>\u6e2c\u9a57\u7d50\u679c<\/h2>\n        <\/header>\n\n        <main>\n            <div class=\"sz-result-score\" data-result-score>\n                <h3>\u60a8\u7684\u7e3d\u5206<\/h3>\n                <div class=\"sz-score-value\" data-score-value>0<\/div>\n                <div class=\"sz-score-label\">\u5206<\/div>\n            <\/div>\n\n            <div class=\"sz-chart-container\">\n                <h3 class=\"sz-chart-title\">\u5206\u4eab\u80fd\u529b\u5206\u6790<\/h3>\n                <div class=\"sz-chart-wrapper\">\n                    <canvas id=\"szResultChart\"><\/canvas>\n                <\/div>\n            <\/div>\n\n            <div class=\"sz-result-analysis\" data-result-analysis>\n                <!-- \u7d50\u679c\u5206\u6790\u5c07\u7531 JavaScript \u52d5\u614b\u63d2\u5165 -->\n            <\/div>\n\n            <button class=\"sz-btn sz-btn-center\" data-action=\"restart-quiz\">\u91cd\u65b0\u6e2c\u9a57<\/button>\n        <\/main>\n    <\/div>\n<\/div>\n\n<!-- \u6a23\u5f0f (CSS) -->\n<style>\n    \/* CSS Custom Properties *\/\n    :root {\n        --sz-primary-color: #4f46e5;\n        --sz-primary-dark: #3730a3;\n        --sz-secondary-color: #06b6d4;\n        --sz-accent-color: #f59e0b;\n        --sz-success-color: #10b981;\n        --sz-warning-color: #f59e0b;\n        --sz-error-color: #ef4444;\n        --sz-text-primary: #1f2937;\n        --sz-text-secondary: #6b7280;\n        --sz-bg-primary: #ffffff;\n        --sz-bg-secondary: #f9fafb;\n        --sz-border-color: #e5e7eb;\n        --sz-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n        --sz-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);\n        --sz-border-radius: 12px;\n        --sz-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n    }\n\n    \/* Reset and Base Styles *\/\n    .sz-quiz-container * {\n        box-sizing: border-box;\n        margin: 0;\n        padding: 0;\n    }\n\n    .sz-quiz-container {\n        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;\n        line-height: 1.6;\n        color: var(--sz-text-primary);\n        background: var(--sz-bg-secondary);\n        min-height: 400px;\n        padding: 16px;\n        border-radius: var(--sz-border-radius);\n        box-shadow: var(--sz-shadow);\n        max-width: 750px;\n        margin: 0 auto;\n        position: relative;\n        overflow: hidden;\n    }\n\n    \/* Typography *\/\n    .sz-quiz-container h2 {\n        font-size: clamp(28px, 4vw, 40px);\n        font-weight: 700;\n        text-align: center;\n        margin-bottom: 24px;\n        color: var(--sz-primary-color);\n        line-height: 1.2;\n    }\n\n    .sz-quiz-container h3 {\n        font-size: 22px;\n        font-weight: 600;\n        margin-bottom: 20px;\n        color: var(--sz-text-primary);\n        line-height: 1.3;\n    }\n\n    .sz-quiz-container p {\n        font-size: 18px;\n        line-height: 1.7;\n        margin-bottom: 20px;\n        color: var(--sz-text-secondary);\n    }\n\n    \/* Page Containers *\/\n    .sz-page {\n        display: none;\n        animation: fadeIn 0.4s ease-out;\n    }\n\n    .sz-page.sz-active {\n        display: block;\n    }\n\n    @keyframes fadeIn {\n        from { opacity: 0; transform: translateY(10px); }\n        to { opacity: 1; transform: translateY(0); }\n    }\n\n    \/* Landing Page Styles *\/\n    .sz-intro-section {\n        text-align: center;\n        margin-bottom: 40px;\n    }\n\n    .sz-intro-title {\n        background: linear-gradient(135deg, var(--sz-primary-color), var(--sz-secondary-color));\n        -webkit-background-clip: text;\n        -webkit-text-fill-color: transparent;\n        background-clip: text;\n        margin-bottom: 16px;\n    }\n\n    .sz-intro-subtitle {\n        font-size: 20px;\n        color: var(--sz-text-secondary);\n        margin-bottom: 32px;\n        font-weight: 400;\n    }\n\n    .sz-features-grid {\n        display: grid;\n        grid-template-columns: repeat(3, 1fr);\n        gap: 20px;\n        margin-bottom: 40px;\n        max-width: 750px;\n        margin-left: auto;\n        margin-right: auto;\n    }\n\n    .sz-feature-card {\n        background: var(--sz-bg-primary);\n        padding: 24px;\n        border-radius: var(--sz-border-radius);\n        box-shadow: var(--sz-shadow);\n        text-align: center;\n        transition: var(--sz-transition);\n    }\n\n    .sz-feature-card:hover {\n        transform: translateY(-4px);\n        box-shadow: var(--sz-shadow-lg);\n    }\n\n    .sz-feature-icon {\n        width: 64px;\n        height: 64px;\n        background: linear-gradient(135deg, var(--sz-primary-color), var(--sz-secondary-color));\n        border-radius: 50%;\n        display: flex;\n        align-items: center;\n        justify-content: center;\n        margin: 0 auto 16px;\n        font-size: 28px;\n        color: white;\n    }\n\n    .sz-feature-title {\n        font-size: 18px;\n        font-weight: 600;\n        margin-bottom: 8px;\n        color: var(--sz-text-primary);\n    }\n\n    .sz-feature-desc {\n        font-size: 16px;\n        color: var(--sz-text-secondary);\n        margin: 0;\n    }\n\n    \/* Button Styles *\/\n    .sz-btn {\n        background: linear-gradient(135deg, var(--sz-primary-color), var(--sz-primary-dark));\n        color: white;\n        border: none;\n        padding: 16px 32px;\n        font-size: 18px;\n        font-weight: 600;\n        border-radius: var(--sz-border-radius);\n        cursor: pointer;\n        transition: var(--sz-transition);\n        box-shadow: var(--sz-shadow);\n        min-height: 44px;\n        min-width: 44px;\n        display: inline-flex;\n        align-items: center;\n        justify-content: center;\n        text-decoration: none;\n    }\n\n    .sz-btn:hover {\n        transform: translateY(-2px);\n        box-shadow: var(--sz-shadow-lg);\n        background: linear-gradient(135deg, var(--sz-primary-dark), var(--sz-primary-color));\n    }\n\n    .sz-btn:active {\n        transform: translateY(0);\n    }\n\n    .sz-btn-center {\n        display: block;\n        margin: 32px auto;\n        text-align: center;\n    }\n\n    .sz-btn-secondary {\n        background: var(--sz-bg-primary);\n        color: var(--sz-primary-color);\n        border: 2px solid var(--sz-primary-color);\n    }\n\n    .sz-btn-secondary:hover {\n        background: var(--sz-primary-color);\n        color: white;\n    }\n\n    \/* Progress Bar *\/\n    .sz-progress-container {\n        margin-bottom: 32px;\n    }\n\n    .sz-progress-info {\n        display: flex;\n        justify-content: space-between;\n        align-items: center;\n        margin-bottom: 12px;\n    }\n\n    .sz-progress-text {\n        font-size: 16px;\n        font-weight: 600;\n        color: var(--sz-text-primary);\n    }\n\n    .sz-progress-bar {\n        width: 100%;\n        height: 8px;\n        background: var(--sz-border-color);\n        border-radius: 4px;\n        overflow: hidden;\n    }\n\n    .sz-progress-fill {\n        height: 100%;\n        background: linear-gradient(90deg, var(--sz-primary-color), var(--sz-secondary-color));\n        transition: width 0.4s ease-out;\n        width: 0;\n    }\n\n    \/* Question Styles *\/\n    .sz-question-container {\n        margin-bottom: 32px;\n    }\n\n    .sz-options-container {\n        display: flex;\n        flex-direction: column;\n        gap: 12px;\n        margin-bottom: 32px;\n    }\n\n    .sz-option {\n        background: var(--sz-bg-primary);\n        border: 2px solid var(--sz-border-color);\n        border-radius: var(--sz-border-radius);\n        padding: 16px 20px;\n        cursor: pointer;\n        transition: var(--sz-transition);\n        font-size: 18px;\n        color: var(--sz-text-primary);\n        text-align: left;\n        min-height: 44px;\n        display: flex;\n        align-items: center;\n    }\n\n    .sz-option:hover {\n        border-color: var(--sz-primary-color);\n        background: rgba(79, 70, 229, 0.05);\n        transform: translateX(4px);\n        color: var(--sz-text-primary);\n    }\n\n    .sz-option.sz-selected {\n        border-color: var(--sz-primary-color);\n        background: linear-gradient(135deg, rgba(79, 70, 229, 0.1), rgba(6, 182, 212, 0.1));\n        color: var(--sz-primary-color);\n        font-weight: 600;\n    }\n\n    \/* Navigation *\/\n    .sz-navigation {\n        display: flex;\n        justify-content: center;\n        margin-top: 32px;\n    }\n\n    \/* Results Styles *\/\n    .sz-result-score {\n        background: linear-gradient(135deg, var(--sz-primary-color), var(--sz-secondary-color));\n        color: white;\n        padding: 24px;\n        border-radius: var(--sz-border-radius);\n        text-align: center;\n        margin-bottom: 32px;\n        box-shadow: var(--sz-shadow);\n    }\n\n    .sz-result-score h3 {\n        font-size: 24px;\n        margin-bottom: 8px;\n        color: white;\n    }\n\n    .sz-score-value {\n        font-size: 48px;\n        font-weight: 700;\n        margin-bottom: 8px;\n    }\n\n    .sz-score-label {\n        font-size: 18px;\n        opacity: 0.9;\n    }\n\n    .sz-chart-container {\n        background: var(--sz-bg-primary);\n        padding: 24px;\n        border-radius: var(--sz-border-radius);\n        box-shadow: var(--sz-shadow);\n        margin-bottom: 32px;\n        text-align: center;\n    }\n\n    .sz-chart-title {\n        font-size: 20px;\n        font-weight: 600;\n        margin-bottom: 16px;\n        color: var(--sz-text-primary);\n        text-align: center;\n    }\n\n    .sz-chart-wrapper {\n        position: relative;\n        height: 300px;\n        margin: 0 auto;\n        max-width: 400px;\n    }\n\n    .sz-result-analysis {\n        background: var(--sz-bg-primary);\n        padding: 24px;\n        border-radius: var(--sz-border-radius);\n        box-shadow: var(--sz-shadow);\n        margin-bottom: 32px;\n    }\n\n    .sz-result-analysis h3 {\n        font-size: 22px;\n        margin-bottom: 16px;\n        color: var(--sz-primary-color);\n    }\n\n    .sz-result-analysis p {\n        text-align: left;\n        font-size: 17px;\n        line-height: 1.8;\n        color: var(--sz-text-primary);\n    }\n\n    \/* Responsive Design *\/\n    @media (max-width: 768px) {\n        .sz-quiz-container {\n            padding: 12px;\n        }\n\n        .sz-features-grid {\n            grid-template-columns: 1fr;\n            gap: 16px;\n        }\n\n        .sz-feature-card {\n            padding: 20px;\n        }\n\n        .sz-btn {\n            padding: 14px 24px;\n            font-size: 16px;\n        }\n\n        .sz-option {\n            padding: 14px 16px;\n            font-size: 17px;\n        }\n\n        .sz-chart-wrapper {\n            height: 250px;\n        }\n    }\n\n    @media (max-width: 600px) {\n        .sz-features-grid {\n            grid-template-columns: 1fr;\n            gap: 16px;\n        }\n\n        .sz-feature-card {\n            padding: 20px;\n        }\n    }\n\n    @media (max-width: 480px) {\n        .sz-quiz-container h2 {\n            font-size: 24px;\n        }\n\n        .sz-quiz-container h3 {\n            font-size: 20px;\n        }\n\n        .sz-quiz-container p {\n            font-size: 16px;\n        }\n\n        .sz-feature-icon {\n            width: 56px;\n            height: 56px;\n            font-size: 24px;\n        }\n\n        .sz-score-value {\n            font-size: 36px;\n        }\n    }\n\n    \/* Accessibility *\/\n    .sz-option:focus {\n        outline: 2px solid var(--sz-primary-color);\n        outline-offset: 2px;\n    }\n\n    .sz-btn:focus {\n        outline: 2px solid var(--sz-primary-color);\n        outline-offset: 2px;\n    }\n\n    @media (prefers-reduced-motion: reduce) {\n        * {\n            animation-duration: 0.01ms !important;\n            animation-iteration-count: 1 !important;\n            transition-duration: 0.01ms !important;\n        }\n    }\n<\/style>\n\n<!-- \u884c\u70ba (JavaScript) -->\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/Chart.js\/4.4.1\/chart.umd.min.js\"><\/script>\n<script>\n    \/\/ \u5206\u4eab\u80fd\u529b\u6e2c\u9a57\u7cfb\u7d71 - \u6a21\u584a\u5316 JavaScript\n    (function() {\n        'use strict';\n\n        \/\/ \u6e2c\u9a57\u6578\u64da\n        const QUIZ_DATA = {\n            questions: [\n                {\n                    id: 1,\n                    question: \"\u4f60\u7368\u81ea\u5f85\u5728\u4e00\u9593\u8457\u706b\u7684\u5c4b\u5b50\u88e1\uff0c\u6c7a\u5b9a\u547d\u904b\u7684\u95dc\u982d\u4e0b\u9762\u5e7e\u4ef6\u6771\u897f\u4e2d\u53ea\u80fd\u5e36\u8d70\u4e00\u6a23\uff0c\u4f60\u6703\u5e36\u8d70\u54ea\u500b\uff1f\",\n                    options: [\n                        { text: \"\u6211\u7684\u820a\u60c5\u66f8\", score: 1 },\n                        { text: \"\u5c0d\u6200\u4eba\u4f86\u8aaa\u5f88\u91cd\u8981\u7684\u8b49\u4ef6\", score: 4 },\n                        { text: \"\u6211\u5011\u4fdd\u96aa\u7bb1\u7684\u9470\u5319\", score: 5 },\n                        { text: \"\u6211\u7684\u5408\u5f71\u7c3f\", score: 2 }\n                    ]\n                },\n                {\n                    id: 2,\n                    question: \"\u611b\u4eba\u548c\u7570\u6027\u670b\u53cb\u89aa\u5bc6\u4ea4\u8ac7\uff0c\u4f60\u53c3\u52a0\u9032\u53bb\u4e00\u822c\u6703\u8aaa\u4e9b\u4ec0\u9ebc\uff1f\",\n                    options: [\n                        { text: \"\u5728\u4e00\u908a\u807d\u4ed6\u5011\u7684\u8ac7\u8a71\uff0c\u6642\u4e0d\u6642\u63d2\u5e7e\u53e5\u9032\u53bb\", score: 3 },\n                        { text: \"\u53ea\u6709\u554f\u5230\u81ea\u5df1\u7684\u6642\u5019\u624d\u56de\u7b54\u4e00\u4e0b\", score: 1 },\n                        { text: \"\u6545\u610f\u6296\u4e00\u4e9b\u611b\u4eba\u7684\u7cd7\u4e8b\u6216\u7f3a\u9ede\u7d66\u5c0d\u65b9\", score: 4 },\n                        { text: \"\u6545\u610f\u5f88\u7a4d\u6975\u5730\u548c\u90a3\u500b\u670b\u53cb\u8ac7\u8a71\uff0c\u628a\u611b\u4eba\u51b7\u843d\u5728\u4e00\u908a\", score: 5 }\n                    ]\n                },\n                {\n                    id: 3,\n                    question: \"\u6709\u670b\u53cb\u4f86\u501f\u4f60\u7684\u66f8\u7c4d\u6216\u8005\u5149\u789f\uff0c\u9084\u56de\u4f86\u7684\u6642\u5019\u767c\u73fe\u58de\u4e86\uff0c\u4f60\u6703\u600e\u9ebc\u505a\u5462\uff1f\",\n                    options: [\n                        { text: \"\u5fc3\u7406\u62b1\u6028\uff0c\u5634\u4e0a\u4e0d\u8aaa\uff0c\u4e0d\u904e\u8a00\u8ac7\u88e1\u9084\u662f\u80fd\u986f\u51fa\u4e0d\u9ad8\u8208\", score: 3 },\n                        { text: \"\u958b\u73a9\u7b11\u4f3c\u7684\u8cac\u5099\u5c0d\u65b9\", score: 2 },\n                        { text: \"\u660e\u78ba\u8981\u6c42\u5c0d\u65b9\u8ce0\u511f\", score: 4 },\n                        { text: \"\u5373\u4f7f\u5c0d\u65b9\u8ce0\u4e86\u65b0\u7684\uff0c\u4ecd\u7136\u89ba\u5f97\u5fc3\u88e1\u6709\u500b\u7599\u7629\", score: 5 }\n                    ]\n                },\n                {\n                    id: 4,\n                    question: \"\u4f60\u53bb\u8d85\u5e02\u8cb7\u6771\u897f\uff0c\u525b\u9032\u53bb\u5c31\u767c\u73fe\u4e86\u5f88\u559c\u6b61\u7684\u6771\u897f\uff0c\u6311\u4e86\u4e00\u500b\u6700\u6eff\u610f\u7684\uff0c\u4e0d\u904e\u8981\u5e36\u8457\u901b\u5b8c\u6574\u500b\u8d85\u5e02\u5c31\u592a\u91cd\u4e86\uff0c\u4f60\u6703\u600e\u9ebc\u505a\u5462\uff1f\",\n                    options: [\n                        { text: \"\u5148\u653e\u56de\u8ca8\u67b6\uff0c\u6700\u5f8c\u4ed8\u6b3e\u6642\u518d\u62ff\", score: 1 },\n                        { text: \"\u4ed8\u6b3e\u7684\u6642\u5019\u518d\u62ff\uff0c\u4e0d\u904e\u628a\u5b83\u64fa\u5728\u8ca8\u67b6\u6700\u88e1\u9762\uff0c\u6015\u88ab\u5225\u4eba\u62ff\u8d70\", score: 2 },\n                        { text: \"\u4e00\u4e0d\u505a\u4e8c\u4e0d\u4f11\uff0c\u6c23\u5598\u5401\u5401\u5e36\u8457\u5b83\u5230\u8655\u901b\", score: 4 },\n                        { text: \"\u5148\u4ed8\u6b3e\uff0c\u8cb7\u4e86\u62ff\u51fa\u53bb\u5b58\u597d\u518d\u8aaa\", score: 5 }\n                    ]\n                },\n                {\n                    id: 5,\n                    question: \"\u4e0b\u9762\u54ea\u6a23\u6771\u897f\u662f\u4f60\u96a8\u8eab\u651c\u5e36\u7684\uff1f\u5047\u5982\u5fc5\u9808\u9078\u64c7\u4e00\u6a23\u96a8\u8eab\u651c\u5e36\u7684\u8a71\u3002\",\n                    options: [\n                        { text: \"\u9322\u5305\", score: 4 },\n                        { text: \"\u9470\u5319\", score: 3 },\n                        { text: \"\u624b\u6a5f\", score: 1 },\n                        { text: \"\u624b\u5e15\u7d19\", score: 2 }\n                    ]\n                },\n                {\n                    id: 6,\n                    question: \"\u540c\u5b78\u805a\u6703\uff0c\u4f60\u4f86\u9078\u64c7\u4e00\u500b\u805a\u9910\u7684\u5730\u9ede\uff0c\u9664\u53bb\u53e3\u5473\u65b9\u9762\u7684\u56e0\u7d20\uff0c\u4f60\u6703\u9078\u64c7\u54ea\u500b\u5730\u65b9\uff1f\",\n                    options: [\n                        { text: \"\u81ea\u52a9\u9910\u5ef3\", score: 3 },\n                        { text: \"\u706b\u934b\u6216\u8005\u9ebb\u8fa3\u71d9\u4e4b\u985e\", score: 1 },\n                        { text: \"\u666e\u901a\u7684\u4e2d\u5f0f\u9910\u5ef3\uff0c\u5927\u5bb6\u5403\u4e00\u500b\u76e4\u5b50\u88e1\u7684\u83dc\", score: 2 },\n                        { text: \"\u6bcf\u4eba\u90fd\u5403\u81ea\u5df1\u4e00\u4efd\u7684\u897f\u9910\", score: 5 }\n                    ]\n                }\n            ]\n        };\n\n        \/\/ \u7d50\u679c\u89e3\u6790\u6578\u64da\n        const RESULT_ANALYSIS = {\n            low: {\n                title: \"\u5206\u4eab\u9054\u4eba\uff088\u5206\u4ee5\u4e0b\uff09\",\n                description: \"\u4f60\u5805\u4fe1\u5206\u4eab\u5c31\u662f\u5feb\u6a02\u3002\u6709\u6c92\u6709\u8003\u616e\u904e\uff0c\u4f60\u7684\u5927\u5ea6\u53ef\u80fd\u6709\u4e00\u9ede\u904e\u706b\u4e86\u3002\u5c0d\u670b\u53cb\u6177\u6168\u7576\u7136\u4e26\u6c92\u6709\u904e\u932f\uff0c\u4f46\u4e5f\u4e0d\u662f\u6240\u6709\u7684\u6771\u897f\u90fd\u80fd\u50cf\u8932\u5b50\u4e00\u6a23\u5169\u500b\u4eba\u540c\u7a7f\u4e00\u689d\u3002\u5728\u7269\u54c1\u65b9\u9762\u904e\u5206\u7684\u6177\u6168\u5e38\u5e38\u9020\u6210\u83ab\u540d\u5176\u5999\u7684\u4e1f\u5931\uff0c\u800c\u611f\u60c5\u4e0a\u904e\u65bc\u5927\u5ea6\u5247\u6703\u50cf\u92f8\u5b50\u4e00\u6a23\u5728\u4f60\u5011\u7684\u95dc\u4fc2\u4e2d\u5f04\u51fa\u88c2\u75d5\u3002\u4f60\u9700\u8981\u9069\u53ef\u800c\u6b62\uff0c\u7121\u8ad6\u4ec0\u9ebc\u90fd\u6709\u500b\u9650\u5ea6\uff0c\u4e0d\u662f\u55ce\uff1f\u662f\u4f60\u7684\u5c31\u662f\u4f60\u7684\uff0c\u4e0d\u8981\u9019\u9ebc\u6025\u65bc\u62f1\u624b\u76f8\u8b93\uff0c\u5373\u4f7f\u662f\u70ba\u4e86\u670b\u53cb\uff0c\u5426\u5247\u5c31\u6703\u6709\u6557\u5bb6\u5b50\u7684\u60e1\u540d\u4e86\u3002\"\n            },\n            medium: {\n                title: \"\u5e73\u8861\u5206\u4eab\u8005\uff088-14\u5206\uff09\",\n                description: \"\u4f60\u662f\u80fd\u5920\u63a7\u5236\u81ea\u5df1\u4f54\u6709\u6b32\u7684\u4eba\uff0c\u7576\u7136\uff0c\u80fd\u63a7\u5236\u4e26\u4e0d\u4ee3\u8868\u4f60\u6703\u5927\u5ea6\u5230\u81e5\u69bb\u4e4b\u5074\u53ef\u5bb9\u4ed6\u4eba\u9163\u7761\u3002\u4e5f\u8a31\u5c31\u4eba\u969b\u95dc\u4fc2\u4f86\u8aaa\uff0c\u4f60\u662f\u500b\u4ee4\u4eba\u6109\u5feb\u7684\u670b\u53cb\uff0c\u65e2\u4e0d\u904e\u5206\u5c0f\u6c23\u4e5f\u4e0d\u6703\u5f37\u70c8\u5230\u5fc5\u9808\u6574\u5929\u9ecf\u5728\u4e00\u8d77\u3002\u4f60\u6703\u6bd4\u8f03\u5927\u5ea6\u5730\u5c0d\u5f85\u81ea\u5df1\u7684\u7af6\u722d\u5c0d\u624b\uff0c\u4e0d\u904e\u4e26\u4e0d\u4ee3\u8868\u6703\u628a\u81ea\u5df1\u7684\u6771\u897f\u62f1\u624b\u76f8\u8b93\u3002\u540c\u6a23\u4f60\u4e5f\u4e0d\u6703\u4ecb\u610f\u670b\u53cb\u501f\u7528\u81ea\u5df1\u7684\u6771\u897f\uff0c\u53ea\u8981\u4fdd\u8b49\u6700\u5f8c\u80fd\u5920\u5b8c\u74a7\u6b78\u8d99\u3002\"\n            },\n            high: {\n                title: \"\u9078\u64c7\u6027\u5206\u4eab\u8005\uff0815-21\u5206\uff09\",\n                description: \"\u4e5f\u8a31\u4ea4\u5f80\u4e0d\u6df1\u7684\u4eba\u6703\u89ba\u5f97\u4f60\u662f\u500b\u6bd4\u8f03\u5927\u5ea6\u7684\u4eba\uff0c\u4f46\u5e74\u6df1\u65e5\u4e45\u7684\u670b\u53cb\u624d\u77e5\u9053\u4f60\u5167\u5fc3\u6df1\u8655\u662f\u500b\u5f88\u4e0d\u9858\u610f\u548c\u4eba\u5206\u4eab\u81ea\u5df1\u6240\u6709\u7269\u7684\u50a2\u5925\u3002\u5982\u679c\u53ef\u4ee5\u7684\u8a71\u4ed6\u5011\u6703\u76e1\u91cf\u907f\u514d\u5411\u4f60\u501f\u6771\u897f\uff0c\u5047\u5982\u4e0d\u5e78\u6709\u4eba\u559c\u6b61\u4e0a\u300c\u4f60\u7684\u6771\u897f\u300d\uff0c\u90a3\u9ebc\u4ed6\u4e0d\u6703\u53d7\u5230\u8868\u9762\u4e0a\u7684\u5831\u5fa9\uff0c\u53ea\u6703\u88ab\u4f60\u7121\u8072\u7121\u606f\u7684\u300c\u5e79\u6389\u300d\u3002\u800c\u88ab\u4f60\u770b\u4e0a\u7684\u6771\u897f\uff0c\u5247\u6703\u5728\u7121\u8072\u7121\u606f\u7684\u60c5\u6cc1\u4e0b\u88ab\u4f60\u5283\u6b78\u5df1\u6709\u3002\"\n            },\n            veryHigh: {\n                title: \"\u7368\u4f54\u4e3b\u7fa9\u8005\uff0821\u5206\u4ee5\u4e0a\uff09\",\n                description: \"\u4f60\u7684\u4f54\u6709\u6b32\u5df2\u7d93\u5f37\u70c8\u5230\u975e\u7368\u5360\u4e0d\u53ef\u7684\u7a0b\u5ea6\uff0c\u6709\u9ede\u5371\u96aa\u7684\u611f\u89ba\u3002\u4f60\u8a8d\u5b9a\u662f\u4f60\u7684\u6771\u897f\u6c7a\u4e0d\u5141\u8a31\u5225\u4eba\u5206\u4e00\u676f\u7fb9\uff0c\u4f60\u6703\u7d66\u300c\u81ea\u5df1\u7684\u6771\u897f\u300d\u6253\u4e0a\u5c08\u5c6c\u6a19\u7c64\uff0c\u518d\u653e\u5230\u5225\u4eba\u7121\u6cd5\u89f8\u53ca\u7684\u5730\u65b9\u3002\u7121\u8ad6\u662f\u4ec0\u9ebc\uff0c\u4f60\u90fd\u5e0c\u671b\u81ea\u5df1\u80fd\u6210\u70ba\u5c0d\u65b9\u7368\u4e00\u7121\u4e8c\u7684\u64c1\u6709\u8005\uff0c\u5982\u679c\u6709\u4eba\u60f3\u8981\u4ecb\u5165\uff0c\u52e2\u5fc5\u6703\u906d\u5230\u4f60\u6700\u70ba\u5f37\u70c8\u7684\u6392\u64e0\u548c\u5831\u5fa9\u3002\"\n            }\n        };\n\n        \/\/ \u61c9\u7528\u72c0\u614b\n        class QuizState {\n            constructor() {\n                this.currentQuestion = 0;\n                this.answers = [];\n                this.totalScore = 0;\n                this.isQuizCompleted = false;\n            }\n\n            reset() {\n                this.currentQuestion = 0;\n                this.answers = [];\n                this.totalScore = 0;\n                this.isQuizCompleted = false;\n            }\n\n            addAnswer(questionId, optionIndex, score) {\n                this.answers[questionId - 1] = { optionIndex, score };\n                this.totalScore = this.answers.reduce((sum, answer) => sum + (answer?.score || 0), 0);\n            }\n\n            canGoToNext() {\n                return this.answers[this.currentQuestion] !== undefined;\n            }\n\n            isLastQuestion() {\n                return this.currentQuestion === QUIZ_DATA.questions.length - 1;\n            }\n        }\n\n        \/\/ DOM \u5de5\u5177\u51fd\u6578\n        class DOMUtils {\n            static $(selector, context = document) {\n                return context.querySelector(selector);\n            }\n\n            static $$(selector, context = document) {\n                return Array.from(context.querySelectorAll(selector));\n            }\n\n            static createElement(tag, className = '', content = '') {\n                const element = document.createElement(tag);\n                if (className) element.className = className;\n                if (content) element.textContent = content;\n                return element;\n            }\n\n            static smoothScrollToTop() {\n                const container = DOMUtils.$('.sz-quiz-container');\n                if (container) {\n                    container.scrollIntoView({ \n                        behavior: 'smooth', \n                        block: 'start' \n                    });\n                }\n            }\n        }\n\n        \/\/ \u9801\u9762\u7ba1\u7406\u5668\n        class PageManager {\n            static showPage(pageName) {\n                DOMUtils.$$('.sz-page').forEach(page => {\n                    page.classList.remove('sz-active');\n                });\n                \n                const targetPage = DOMUtils.$(`[data-page=\"${pageName}\"]`);\n                if (targetPage) {\n                    targetPage.classList.add('sz-active');\n                    DOMUtils.smoothScrollToTop();\n                }\n            }\n\n            static getCurrentPage() {\n                const activePage = DOMUtils.$('.sz-page.sz-active');\n                return activePage ? activePage.dataset.page : null;\n            }\n        }\n\n        \/\/ \u6e2c\u9a57\u908f\u8f2f\u7ba1\u7406\u5668\n        class QuizManager {\n            constructor() {\n                this.state = new QuizState();\n                this.chartInstance = null;\n                this.init();\n            }\n\n            init() {\n                this.bindEvents();\n            }\n\n            bindEvents() {\n                const container = DOMUtils.$('#szQuizContainer');\n                \n                \/\/ \u4f7f\u7528\u4e8b\u4ef6\u59d4\u8a17\u8655\u7406\u6240\u6709\u6309\u9215\u9ede\u64ca\n                container.addEventListener('click', this.handleClick.bind(this));\n            }\n\n            handleClick(event) {\n                const target = event.target;\n                const action = target.dataset.action;\n\n                switch (action) {\n                    case 'start-quiz':\n                        this.startQuiz();\n                        break;\n                    case 'prev-question':\n                        this.goToPreviousQuestion();\n                        break;\n                    case 'restart-quiz':\n                        this.restartQuiz();\n                        break;\n                    default:\n                        \/\/ \u8655\u7406\u9078\u9805\u9ede\u64ca\n                        if (target.classList.contains('sz-option')) {\n                            this.handleOptionClick(target);\n                        }\n                        break;\n                }\n            }\n\n            startQuiz() {\n                this.state.reset();\n                PageManager.showPage('quiz');\n                this.renderQuestion();\n                this.updateProgress();\n            }\n\n            renderQuestion() {\n                const question = QUIZ_DATA.questions[this.state.currentQuestion];\n                const container = DOMUtils.$('[data-question-container]');\n                \n                \/\/ \u6e05\u7a7a\u5bb9\u5668\n                container.innerHTML = '';\n\n                \/\/ \u5275\u5efa\u554f\u984c\u6a19\u984c\n                const questionTitle = DOMUtils.createElement('h3', '', question.question);\n                container.appendChild(questionTitle);\n\n                \/\/ \u5275\u5efa\u9078\u9805\u5bb9\u5668\n                const optionsContainer = DOMUtils.createElement('div', 'sz-options-container');\n                \n                question.options.forEach((option, index) => {\n                    const optionElement = DOMUtils.createElement('button', 'sz-option', option.text);\n                    optionElement.dataset.questionId = question.id;\n                    optionElement.dataset.optionIndex = index;\n                    optionElement.dataset.score = option.score;\n                    \n                    \/\/ \u5982\u679c\u5df2\u7d93\u9078\u64c7\u904e\uff0c\u6a19\u8a18\u70ba\u5df2\u9078\u4e2d\n                    const existingAnswer = this.state.answers[this.state.currentQuestion];\n                    if (existingAnswer && existingAnswer.optionIndex === index) {\n                        optionElement.classList.add('sz-selected');\n                    }\n\n                    optionsContainer.appendChild(optionElement);\n                });\n\n                container.appendChild(optionsContainer);\n\n                \/\/ \u66f4\u65b0\u4e0a\u4e00\u984c\u6309\u9215\u986f\u793a\n                const prevButton = DOMUtils.$('[data-action=\"prev-question\"]');\n                prevButton.style.display = this.state.currentQuestion > 0 ? 'block' : 'none';\n            }\n\n            handleOptionClick(optionElement) {\n                const questionId = parseInt(optionElement.dataset.questionId);\n                const optionIndex = parseInt(optionElement.dataset.optionIndex);\n                const score = parseInt(optionElement.dataset.score);\n\n                \/\/ \u79fb\u9664\u540c\u4e00\u554f\u984c\u7684\u5176\u4ed6\u9078\u4e2d\u72c0\u614b\n                const allOptions = DOMUtils.$$(`[data-question-id=\"${questionId}\"]`);\n                allOptions.forEach(option => option.classList.remove('sz-selected'));\n\n                \/\/ \u6a19\u8a18\u7576\u524d\u9078\u9805\u70ba\u5df2\u9078\u4e2d\n                optionElement.classList.add('sz-selected');\n\n                \/\/ \u4fdd\u5b58\u7b54\u6848\n                this.state.addAnswer(questionId, optionIndex, score);\n\n                \/\/ \u5ef6\u9072\u5f8c\u81ea\u52d5\u9032\u5165\u4e0b\u4e00\u984c\u6216\u5b8c\u6210\u6e2c\u9a57\n                setTimeout(() => {\n                    if (this.state.isLastQuestion()) {\n                        this.completeQuiz();\n                    } else {\n                        this.goToNextQuestion();\n                    }\n                }, 300);\n            }\n\n            goToNextQuestion() {\n                if (this.state.currentQuestion < QUIZ_DATA.questions.length - 1) {\n                    this.state.currentQuestion++;\n                    this.renderQuestion();\n                    this.updateProgress();\n                    DOMUtils.smoothScrollToTop();\n                }\n            }\n\n            goToPreviousQuestion() {\n                if (this.state.currentQuestion > 0) {\n                    this.state.currentQuestion--;\n                    this.renderQuestion();\n                    this.updateProgress();\n                    DOMUtils.smoothScrollToTop();\n                }\n            }\n\n            updateProgress() {\n                const progressText = DOMUtils.$('[data-progress-text]');\n                const progressFill = DOMUtils.$('[data-progress-fill]');\n                \n                if (progressText && progressFill) {\n                    const current = this.state.currentQuestion + 1;\n                    const total = QUIZ_DATA.questions.length;\n                    const percentage = (current \/ total) * 100;\n\n                    progressText.textContent = `\u554f\u984c ${current} \/ ${total}`;\n                    progressFill.style.width = `${percentage}%`;\n                }\n            }\n\n            completeQuiz() {\n                this.state.isQuizCompleted = true;\n                PageManager.showPage('results');\n                this.renderResults();\n            }\n\n            renderResults() {\n                const scoreElement = DOMUtils.$('[data-score-value]');\n                const analysisElement = DOMUtils.$('[data-result-analysis]');\n\n                if (scoreElement) {\n                    scoreElement.textContent = this.state.totalScore;\n                }\n\n                \/\/ \u7372\u53d6\u7d50\u679c\u5206\u6790\n                const analysis = this.getResultAnalysis(this.state.totalScore);\n                \n                if (analysisElement) {\n                    analysisElement.innerHTML = `\n                        <h3>${analysis.title}<\/h3>\n                        <p>${analysis.description}<\/p>\n                    `;\n                }\n\n                \/\/ \u6e32\u67d3\u5716\u8868\n                this.renderChart();\n            }\n\n            getResultAnalysis(score) {\n                if (score < 8) return RESULT_ANALYSIS.low;\n                if (score <= 14) return RESULT_ANALYSIS.medium;\n                if (score <= 21) return RESULT_ANALYSIS.high;\n                return RESULT_ANALYSIS.veryHigh;\n            }\n\n            renderChart() {\n                const canvas = DOMUtils.$('#szResultChart');\n                if (!canvas) return;\n\n                \/\/ \u92b7\u6bc0\u73fe\u6709\u5716\u8868\n                if (this.chartInstance) {\n                    this.chartInstance.destroy();\n                }\n\n                const ctx = canvas.getContext('2d');\n                const score = this.state.totalScore;\n                const maxScore = 30;\n                const shareAbility = Math.max(0, 100 - (score \/ maxScore * 100));\n                const possessiveness = score \/ maxScore * 100;\n\n                this.chartInstance = new Chart(ctx, {\n                    type: 'doughnut',\n                    data: {\n                        labels: ['\u5206\u4eab\u80fd\u529b', '\u4f54\u6709\u6b32'],\n                        datasets: [{\n                            data: [shareAbility, possessiveness],\n                            backgroundColor: [\n                                'rgba(16, 185, 129, 0.8)',\n                                'rgba(239, 68, 68, 0.8)'\n                            ],\n                            borderColor: [\n                                'rgba(16, 185, 129, 1)',\n                                'rgba(239, 68, 68, 1)'\n                            ],\n                            borderWidth: 2\n                        }]\n                    },\n                    options: {\n                        responsive: true,\n                        maintainAspectRatio: false,\n                        plugins: {\n                            legend: {\n                                position: 'bottom',\n                                labels: {\n                                    padding: 20,\n                                    font: {\n                                        size: 18\n                                    }\n                                }\n                            },\n                            tooltip: {\n                                callbacks: {\n                                    label: function(context) {\n                                        return context.label + ': ' + Math.round(context.parsed) + '%';\n                                    }\n                                }\n                            }\n                        },\n                        cutout: '50%'\n                    }\n                });\n            }\n\n            restartQuiz() {\n                this.state.reset();\n                PageManager.showPage('intro');\n                \n                \/\/ \u92b7\u6bc0\u5716\u8868\u5be6\u4f8b\n                if (this.chartInstance) {\n                    this.chartInstance.destroy();\n                    this.chartInstance = null;\n                }\n            }\n        }\n\n        \/\/ \u521d\u59cb\u5316\u61c9\u7528\n        function initializeApp() {\n            \/\/ \u78ba\u4fdd DOM \u5df2\u52a0\u8f09\n            if (document.readyState === 'loading') {\n                document.addEventListener('DOMContentLoaded', () => {\n                    new QuizManager();\n                });\n            } else {\n                new QuizManager();\n            }\n        }\n\n        \/\/ \u555f\u52d5\u61c9\u7528\n        initializeApp();\n\n    })();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>\u5982\u679c\u4f60\u4e0d\u559c\u6b22\u628a\u5feb\u4e50\u9001\u7ed9\u522b\u4eba\uff0c\u4f60\u81ea\u5df1\u4e5f\u5c31\u6ca1\u6709\u5feb\u4e50\u4e86\u3002\u8fd9\u4e5f\u662f\u751f\u6d3b\u7684\u771f\u8c1b\u3002\u4f60\u662f\u5426\u62e5\u6709\u5206\u4eab\u7684\u89c2\u5ff5\u5462\uff1f\u8bf7\u56de\u7b54\u4e0b\u9762\u8fd96\u4e2a\u95ee\u9898\u3002<\/p>","protected":false},"author":19,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"narrow-width-container","site-content-style":"unboxed","site-sidebar-style":"default","ast-global-header-display":"disabled","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[167,175,160],"tags":[234],"class_list":["post-2719","post","type-post","status-publish","format-standard","hentry","category-personality","category-relationships","category-attitude-scales","tag-share"],"_links":{"self":[{"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/posts\/2719","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/users\/19"}],"replies":[{"embeddable":true,"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/comments?post=2719"}],"version-history":[{"count":2,"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/posts\/2719\/revisions"}],"predecessor-version":[{"id":9978,"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/posts\/2719\/revisions\/9978"}],"wp:attachment":[{"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/media?parent=2719"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/categories?post=2719"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xinliceyan.org\/zh\/wp-json\/wp\/v2\/tags?post=2719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}