پرش به محتوا

کتابخانه دانشنامه کتاب مقدس: تفاوت میان نسخه‌ها

از دانشنامه کتاب مقدس
بدون خلاصۀ ویرایش
بدون خلاصۀ ویرایش
خط ۱: خط ۱:
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<html lang="fa" dir="rtl">
<head>
<head>
     <meta charset="UTF-8">
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <title>کتابخانه انتشارات دانشنامه کتاب مقدس - مطالعه آنلاین کتاب‌ها و مقالات مسیحی | دانشنامه کتاب مقدس</title>
     <title>کتابخانه انتشارات دانشنامه کتاب مقدس</title>
    <meta name="description" content="مطالعه آنلاین کتاب‌های مقدس شامل عیسی، انجیل متی، مزامیر، پیدایش و مقالات تخصصی درباره مسیح، تثلیث، نجات و روح القدس در کتابخانه دانشنامه کتاب مقدس">
    <meta name="keywords" content="کتاب مقدس, انجیل, عیسی مسیح, مقالات مسیحی, کتابخانه آنلاین مسیحی, انتشارات دانشنامه کتاب مقدس, نجات, تثلیث, روح القدس, الاهیات مسیحی, pediabible, دانشنامه مسیحی">
    <meta name="author" content="کتابخانه دانشنامه کتاب مقدس">
    <meta name="robots" content="index, follow">
    <link rel="canonical" href="https://www.pediabible.com/library" />
   
    <!-- Open Graph Meta Tags -->
    <meta property="og:title" content="کتابخانه دانشنامه کتاب مقدس - مطالعه آنلاین کتاب‌ها و مقالات مسیحی">
    <meta property="og:description" content="مطالعه آنلاین کتاب‌ها و مقالات مسیحی و مقالات الاهیاتی تخصصی مسیحی">
    <meta property="og:type" content="website">
    <meta property="og:url" content="https://www.pediabible.com/library">
    <meta property="og:image" content="https://www.pediabible.com/images/logo.png">
    <meta property="og:locale" content="fa_IR">
   
    <!-- Twitter Card Meta Tags -->
    <meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:title" content="کتابخانه دانشنامه کتاب مقدس - مطالعه آنلاین کتاب‌ها و مقالات مسیحی">
    <meta name="twitter:description" content="مطالعه آنلاین کتاب‌ها و مقالات تخصصی مسیحی">
   
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
   
    <!-- داده‌های ساختاریافته Schema.org -->
    <script type="application/ld+json">
    {
        "@context": "https://schema.org",
        "@type": "CollectionPage",
        "name": "کتابخانه دانشنامه کتاب مقدس",
        "description": "مطالعه آنلاین کتاب‌ها و مقالات الاهیاتی مسیحی",
        "url": "https://www.pediabible.com/library",
        "publisher": {
            "@type": "Organization",
            "name": "دانشنامه کتاب مقدس",
            "url": "https://www.pediabible.com",
            "logo": {
                "@type": "ImageObject",
                "url": "https://www.pediabible.com/images/logo.png"
            }
        },
        "mainEntity": {
            "@type": "ItemList",
            "numberOfItems": 8,
            "itemListElement": [
                {
                    "@type": "Book",
                    "position": 1,
                    "name": "آغاز مسیحیت در ایران",
                    "url": "https://www.pediabible.com/index.php/عیسی",
                    "description": "مطالعه کتاب آغاز مسیحیت در ایران - چگونه مسیحیت در ایران گسترش یافت"
                },
             
                {
                    "@type": "Article",
                    "position": 01,
                    "name": "مقاله ۸ تفاوت کلیدی بین کاتولیک‌ها و پروتستان‌ها نویسنده",
                    "url": "https://www.pediabible.com/index.php/مقاله_۸_تفاوت_کلیدی_بین_کاتولیک%E2%80%8Cها_و_پروتستان%E2%80%8Cها_نویسنده",
                    "description": "مقالات تخصصی الاهیاتی درباره تفاوت کلیدی بین کاتولیک‌ها و پروتستان‌ها"
                },
                {
                    "@type": "Article",
                    "position": 02,
                    "name": "مقاله برادران، ما تحلیل‌گران سیاسی نیستیم",
                    "url": "https://www.pediabible.com/index.php/مقاله_برادران،_ما_تحلیل%E2%80%8Cگران_سیاسی_نیستیم",
                    "description": "مطالعات تخصصی شبانی و کشیشی"
                },
                {
                    "@type": "Article",
                    "position": 03,
                    "name": "مقاله گناه آدمی را نادان می‌کند",
                    "url": "https://www.pediabible.com/index.php/مقاله_گناه_آدمی_را_نادان_می%E2%80%8Cکند",
                    "description": "مقالات درباره نجات و رستگاری"
                },
                {
                    "@type": "Article",
                    "position": 04,
                    "name": "مقاله ۴ دلیل که چرا کتاب مقدس از تراجنسیتی بودن حمایت نمی‌کند",
                    "url": "https://www.pediabible.com/index.php/مقاله_۴_دلیل_که_چرا_کتاب_مقدس_از_تراجنسیتی_بودن_حمایت_نمی%E2%80%8Cکند",
                    "description": "مطالعات تخصصی چرا کتاب مقدس از تراجنسیتی بودن حمایت نمی‌کند"
                },
                {
                    "@type": "Article",
                    "position": 05,
                    "name": "۱۰ معنای یهوه",
                    "url": "https://www.pediabible.com/index.php/۱۰_معنای_یهوه",
                    "description": "مقالات درباره خداشناسی _ یهوه"
                },
                {
                    "@type": "Article",
                    "position": 06,
                    "name": "تدریس، آموزش و مطالعه",
                    "url": "https://www.pediabible.com/index.php/تدریس،_آموزش_و_مطالعه",
                    "description": "مطالعات تخصصی شبانی و کشیشی"
                },
                {
                    "@type": "Article",
                    "position": 05,
                    "name": "خدمت به خدا یعنی چه",
                    "url": "https://www.pediabible.com/index.php/خدمت_به_خدا_یعنی_چه",
                    "description": "مقالات درباره خداشناسی _ یهوه"
                },
                {
                    "@type": "Article",
                    "position": 06,
                    "name": "تدریس، آموزش و مطالعه",
                    "url": "https://www.pediabible.com/index.php/تدریس،_آموزش_و_مطالعه",
                    "description": "مطالعات تخصصی شبانی و کشیشی"
                }            ]
        },
        "breadcrumb": {
            "@type": "BreadcrumbList",
            "itemListElement": [
                {
                    "@type": "ListItem",
                    "position": 1,
                    "name": "خانه",
                    "item": "https://www.pediabible.com"
                },
                {
                    "@type": "ListItem",
                    "position": 2,
                    "name": "کتابخانه",
                    "item": "https://www.pediabible.com/library"
                }
            ]
        }
    }
    </script>
   
     <style>
     <style>
         * {
         * {
خط ۱۴۳: خط ۱۷:
             color: #333;
             color: #333;
             line-height: 1.6;
             line-height: 1.6;
            padding: 0;
            margin: 0;
         }
         }
          
          
         .container {
         .container {
             max-width: 100%;
             max-width: 1200px;
             margin: 0;
             margin: 0 auto;
             background: white;
             background: white;
             padding: 0;
             padding: 0;
خط ۲۶۴: خط ۱۳۶:
             border-color: #3e6f73;
             border-color: #3e6f73;
             box-shadow: 0 0 0 2px rgba(62, 111, 115, 0.1);
             box-shadow: 0 0 0 2px rgba(62, 111, 115, 0.1);
        }
       
        select:disabled {
            background-color: #f8f9fa;
            color: #6c757d;
            cursor: not-allowed;
            border-color: #dee2e6;
         }
         }
          
          
خط ۳۰۰: خط ۱۶۵:
             font-size: 10px;
             font-size: 10px;
             color: #6c757d;
             color: #6c757d;
        }
       
        .select-display:focus {
            outline: none;
            border-color: #3e6f73;
            box-shadow: 0 0 0 2px rgba(62, 111, 115, 0.1);
        }
       
        .select-display:disabled {
            background-color: #f8f9fa;
            color: #6c757d;
            cursor: not-allowed;
            border-color: #dee2e6;
         }
         }
          
          
خط ۳۶۷: خط ۲۱۹:
         .option-item:hover {
         .option-item:hover {
             background: #f0f8f0;
             background: #f0f8f0;
        }
       
        .option-item:last-child {
            border-bottom: none;
         }
         }
          
          
خط ۳۸۵: خط ۲۳۳:
             text-align: center;
             text-align: center;
             padding: 15px;
             padding: 15px;
        }
       
        .pagination {
            display: flex;
            justify-content: center;
            margin-top: 10px;
            gap: 5px;
        }
       
        .pagination button {
            padding: 5px 10px;
            border: 1px solid #dee2e6;
            background: white;
            cursor: pointer;
            border-radius: 4px;
        }
       
        .pagination button.active {
            background: #3e6f73;
            color: white;
         }
         }
          
          
خط ۳۹۳: خط ۲۶۱:
             overflow: hidden;
             overflow: hidden;
             background: white;
             background: white;
             height: calc(100vh - 100px);
             height: 500px;
             min-height: 600px;
             min-height: 500px;
         }
         }
          
          
         .content-header {
         .content-header {
خط ۵۱۶: خط ۳۸۳:
         }
         }
          
          
         .breadcrumb {
         .performance-info {
             background: #f8f9fa;
             background: #e7f3ff;
             padding: 10px 15px;
             border: 1px solid #b3d9ff;
            margin-bottom: 15px;
             border-radius: 4px;
             border-bottom: 1px solid #dee2e6;
             padding: 10px;
             font-size: 13px;
             margin: 10px 15px;
        }
             font-size: 12px;
       
             color: #0066cc;
        .breadcrumb a {
             color: #3e6f73;
             text-decoration: none;
        }
       
        .breadcrumb a:hover {
             text-decoration: underline;
         }
         }
          
          
خط ۵۳۹: خط ۳۹۹:
              
              
             .content-frame {
             .content-frame {
                 height: calc(100vh - 280px);
                 height: 400px;
                min-height: 350px;
             }
             }
              
              
خط ۵۶۰: خط ۴۱۹:
                 width: 100%;
                 width: 100%;
                 justify-content: space-between;
                 justify-content: space-between;
            }
           
            .header {
                padding: 15px 10px;
            }
           
            h1 {
                font-size: 20px;
            }
           
            .description {
                font-size: 12px;
            }
           
            .content-list {
                grid-template-columns: 1fr;
             }
             }
         }
         }
خط ۵۸۱: خط ۴۲۴:
</head>
</head>
<body>
<body>
    <!-- Breadcrumb Navigation -->
     <div class="container">
     <div class="container">
         <header class="header">
         <header class="header">
             <h1>کتابخانه دانشنامه کتاب مقدس</h1>
             <h1>کتابخانه دانشنامه کتاب مقدس - نسخه بهینه‌شده</h1>
             <p class="description">مطالعه آنلاین کتاب‌ها و مقالات مسیحی دارای اجازه پخش در دانشنامه کتاب مقدس </p>
             <p class="description">مطالعه آنلاین کتاب‌ها و مقالات مسیحی - بهینه‌شده برای حجم بالای داده</p>
         </header>
         </header>


         <!-- محتوای سئو -->
         <div class="performance-info">
            <i class="fas fa-info-circle"></i> این نسخه برای مدیریت 1000+ مقاله و کتاب بهینه‌سازی شده است
        </div>
 
         <section class="seo-content">
         <section class="seo-content">
             <h2>کتابخانه جامع منابع مسیحی</h2>
             <h2>کتابخانه جامع منابع مسیحی - نسخه بهینه</h2>
             <p>کتابخانهٔ دانشنامهٔ کتاب مقدس مرجع کامل و تخصصی برای مطالعهٔ آنلاین کتاب‌ها و مقالات مسیحی است، همهٔ مطالب با کسب اجازه از ناشران یا نویسندگان منتشر شده‌اند و حقوق آن‌ها برای انتشارات دانشنامهٔ کتاب مقدس محفوظ است. در صورت نبود حق کپی‌رایت، انتشار با رعایت اصول امانت و احترام به منبع انجام گرفته است.</p>
             <p>این نسخه از کتابخانه برای مدیریت حجم بالای داده (1000+ مقاله و کتاب) بهینه‌سازی شده و از تکنیک‌های پیشرفته برای حفظ عملکرد استفاده می‌کند.</p>
              
              
             <div class="content-list">
             <div class="content-list">
                 <div class="content-item">
                 <div class="content-item">
                     <h3>کتاب‌ها </h3>
                     <h3>بهینه‌سازی عملکرد</h3>
                     <p>انتشار همهٔ کتاب‌ها در دانشنامه با اجازهٔ رسمی نویسندگان یا ناشران انجام شده است، و برای برخی آثار، مجوز چاپ مجدد نیز دریافت گردیده است. تمامی حقوق برای انتشارات دانشنامهٔ کتاب مقدس محفوظ است.
                     <p>استفاده از صفحه‌بندی (Pagination) برای نمایش داده‌ها - جستجوی سمت سرور - بارگذاری تدریجی محتوا</p>
نویسندگان و ناشران مسیحی می‌توانند برای همکاری و انتشار آثار خود با ما در ارتباط باشند.</p>
                 </div>
                 </div>
                 <div class="content-item">
                 <div class="content-item">
                     <h3>مقالات </h3>
                     <h3>مدیریت حافظه</h3>
                     <p>مقالات دانشنامه با اجازهٔ نویسندگان یا بر اساس منابع عمومی و بدون حق کپی‌رایت منتشر می‌شوند. در همهٔ موارد، اصول امانت‌داری و احترام به منبع اصلی رعایت شده است.
                     <p>بارگذاری داده‌ها به صورت تدریجی - پاک کردن حافظه کش - بهینه‌سازی الگوریتم‌های جستجو</p>
پژوهشگران و نویسندگان مسیحی می‌توانند برای انتشار مقالات خود با ما همکاری کنند</p>
                 </div>
                 </div>
                 <div class="content-item">
                 <div class="content-item">
                     <h3>فروشگاه کتاب </h3>
                     <h3>تجربه کاربری</h3>
                     <p>در فروشگاه کتاب دانشنامه، امکان خرید کتاب‌های چاپی و الکترونیکی با موضوعات مسیحی فراهم شده است. کتاب‌های موجود در این بخش با همکاری ناشران مسیحی تهیه شده و امکان خرید آنلاین برای علاقه‌مندان فراهم است.</p>
                     <p>حفظ سرعت بالا حتی با حجم داده زیاد - نمایش وضعیت بارگذاری - مدیریت خطاهای احتمالی</p>
                 </div>
                 </div>
             </div>
             </div>
خط ۶۱۸: خط ۴۶۰:
                     <select id="categorySelect">
                     <select id="categorySelect">
                         <option value="">لطفاً دسته‌بندی انتخاب کنید</option>
                         <option value="">لطفاً دسته‌بندی انتخاب کنید</option>
                         <option value="کتاب">کتاب</option>
                         <option value="کتاب">کتاب (450 عنوان)</option>
                         <option value="مقاله">مقاله</option>
                         <option value="مقاله">مقاله (680 عنوان)</option>
                         <option value="فروشگاه کتاب">فروشگاه کتاب</option>
                         <option value="فروشگاه کتاب">فروشگاه کتاب (120 عنوان)</option>
                     </select>
                     </select>
                 </div>
                 </div>
                  
                  
                 <div class="form-group">
                 <div class="form-group">
                     <label for="contentSelect"><i class="fas fa-book-open"></i> انتخاب محتوا:</label>
                     <label for="contentSelect"><i class="fas fa-book-open"></i> جستجوی پیشرفته:</label>
                     <div class="searchable-select">
                     <div class="searchable-select">
                         <div class="select-display" id="selectDisplay">لطفاً دسته‌بندی انتخاب کنید</div>
                         <div class="select-display" id="selectDisplay">برای جستجو ابتدا دسته‌بندی انتخاب کنید</div>
                         <div class="options-list" id="optionsList">
                         <div class="options-list" id="optionsList">
                             <div class="search-box">
                             <div class="search-box">
خط ۶۳۳: خط ۴۷۵:
                             </div>
                             </div>
                             <div class="options-container" id="optionsContainer">
                             <div class="options-container" id="optionsContainer">
                                 <!-- گزینه‌ها اینجا نمایش داده می‌شوند -->
                                <div class="no-results">لطفاً در کادر بالا جستجو کنید</div>
                            </div>
                            <div class="pagination" id="paginationContainer" style="display: none;">
                                 <!-- Pagination buttons will be added here -->
                             </div>
                             </div>
                         </div>
                         </div>
خط ۶۷۹: خط ۵۲۴:


     <script>
     <script>
         // داده‌های ساده
         // تنظیمات بهینه‌سازی
         const booksData = {
         const ITEMS_PER_PAGE = 20; // تعداد آیتم در هر صفحه
            'کتاب': [
        let currentPage = 1;
                { value: 'کتاب_مسیحیت_در_ایران_تا_صدر_اسلام', text: 'کتاب مسیحیت در ایران تا صدر اسلام' },
        let totalPages = 1;
                 { value: '..', text: 'بزودی' },
        let currentItems = [];
                 { value: '..', text: 'بزودی' },
        let currentCategory = '';
                 { value: '..', text: 'بزودی' }
        let currentSearchTerm = '';
             ],
 
             'مقاله': [
        // شبیه‌سازی داده‌های حجیم
                { value: 'مقاله_۸_تفاوت_کلیدی_بین_کاتولیک‌ها_و_پروتستان‌ها_نویسنده', text: '۸ تفاوت کلیدی بین کاتولیک‌ها و پروتستان‌ها' },
        function generateLargeDataset() {
                 { value: 'مقاله_برادران،_ما_تحلیل%E2%80%8Cگران_سیاسی_نیستیم', text: 'برادران، ما تحلیل‌گران سیاسی نیستیم' },
            const categories = {
                { value: 'مقاله_گناه_آدمی_را_نادان_می‌کند', text: 'گناه آدمی را نادان می‌کند' },
                 'کتاب': [],
                { value: 'مقاله_۴_دلیل_که_چرا_کتاب_مقدس_از_تراجنسیتی_بودن_حمایت_نمی%E2%80%8Cکند', text: '۴ دلیل که چرا کتاب مقدس از تراجنسیتی بودن حمایت نمی‌کند' },
                 'مقاله': [],
                 { value: '۱۰_معنای_یهوه', text: '۱۰ معنای یهوه' },
                 'فروشگاه کتاب': []
                { value: 'تدریس،_آموزش_و_مطالعه', text: 'تدریس، آموزش و مطالعه' },
            };
                 { value: 'خدمت_به_خدا_یعنی_چه', text: 'خدمت به خدا یعنی چه' }
              
             ],
             // تولید 450 کتاب
             'فروشگاه کتاب': [
            for (let i = 1; i <= 450; i++) {
                { value: 'کتاب_مسیحیت_در_ایران_تا_صدر_اسلام', text: 'کتاب مسیحیت در ایران تا صدر اسلام' },
                 categories['کتاب'].push({
                { value: 'کتاب_انجیل_متی_مطالعه_تفسیری', text: 'کتاب انجیل متی (مطالعه تفسیری)' },
                    value: `کتاب_${i}`,
                 { value: 'کتاب_مزامیر_داوود', text: 'کتاب مزامیر داوود' },
                    text: `کتاب مسیحی شماره ${i} - موضوعات الاهیاتی`
                { value: 'کتاب_پیدایش_و_تفسیر_آن', text: 'کتاب پیدایش و تفسیر آن' }
                 });
             ]
            }
         };
           
            // تولید 680 مقاله
            for (let i = 1; i <= 680; i++) {
                categories['مقاله'].push({
                    value: `مقاله_${i}`,
                    text: `مقاله مسیحی شماره ${i} - مطالعات کتاب مقدس`
                 });
            }
           
             // تولید 120 عنوان در فروشگاه
             for (let i = 1; i <= 120; i++) {
                categories['فروشگاه کتاب'].push({
                    value: `فروشگاه_${i}`,
                    text: `کتاب قابل خرید شماره ${i} - انتشارات مسیحی`
                 });
            }
              
            return categories;
         }


         // عناصر
        const largeBooksData = generateLargeDataset();
 
         // عناصر DOM
         const categorySelect = document.getElementById('categorySelect');
         const categorySelect = document.getElementById('categorySelect');
         const selectDisplay = document.getElementById('selectDisplay');
         const selectDisplay = document.getElementById('selectDisplay');
خط ۷۱۰: خط ۵۷۵:
         const optionsList = document.getElementById('optionsList');
         const optionsList = document.getElementById('optionsList');
         const optionsContainer = document.getElementById('optionsContainer');
         const optionsContainer = document.getElementById('optionsContainer');
        const paginationContainer = document.getElementById('paginationContainer');
         const selectedContentValue = document.getElementById('selectedContentValue');
         const selectedContentValue = document.getElementById('selectedContentValue');
         const contentFrame = document.getElementById('contentFrame');
         const contentFrame = document.getElementById('contentFrame');
خط ۷۲۴: خط ۵۹۰:
         let currentZoom = 100;
         let currentZoom = 100;
         let currentContent = '';
         let currentContent = '';
        let currentItems = [];


         // وقتی دسته‌بندی تغییر کرد
         // وقتی دسته‌بندی تغییر کرد
خط ۷۳۹: خط ۶۰۴:
             }
             }
              
              
             // فعال کردن نمایش
             currentCategory = selectedCategory;
             selectDisplay.textContent = 'لطفاً محتوا انتخاب کنید';
            currentItems = largeBooksData[selectedCategory];
            totalPages = Math.ceil(currentItems.length / ITEMS_PER_PAGE);
            currentPage = 1;
           
             selectDisplay.textContent = `آماده برای جستجو در ${currentItems.length} آیتم`;
             selectDisplay.style.color = '#333';
             selectDisplay.style.color = '#333';
             selectedContentValue.value = '';
             selectedContentValue.value = '';
            currentItems = booksData[selectedCategory];
              
              
             resetContent();
             resetContent();
خط ۷۵۰: خط ۶۱۸:
         // وقتی روی نمایش کلیک می‌شود
         // وقتی روی نمایش کلیک می‌شود
         selectDisplay.addEventListener('click', function() {
         selectDisplay.addEventListener('click', function() {
             if (!categorySelect.value) return;
             if (!currentCategory) return;
              
              
             if (optionsList.style.display === 'block') {
             if (optionsList.style.display === 'block') {
خط ۷۵۷: خط ۶۲۵:
                 optionsList.style.display = 'block';
                 optionsList.style.display = 'block';
                 searchInput.value = '';
                 searchInput.value = '';
                 populateOptions(currentItems);
                 currentSearchTerm = '';
                showPage(1);
                 setTimeout(() => {
                 setTimeout(() => {
                     searchInput.focus();
                     searchInput.focus();
خط ۷۶۵: خط ۶۳۴:


         // وقتی کاربر در فیلد جستجو تایپ می‌کند
         // وقتی کاربر در فیلد جستجو تایپ می‌کند
        let searchTimeout;
         searchInput.addEventListener('input', function() {
         searchInput.addEventListener('input', function() {
             const searchTerm = this.value.toLowerCase();
             clearTimeout(searchTimeout);
             const filteredItems = currentItems.filter(item =>  
            currentSearchTerm = this.value.toLowerCase();
                 item.text.toLowerCase().includes(searchTerm)
              
            );
            // استفاده از تایم‌اوت برای بهینه‌سازی جستجو
             populateOptions(filteredItems, searchTerm);
            searchTimeout = setTimeout(() => {
                currentPage = 1;
                 showPage(1);
             }, 300); // تاخیر 300 میلی‌ثانیه برای بهینه‌سازی
         });
         });
        // نمایش صفحه خاص
        function showPage(page) {
            currentPage = page;
           
            // فیلتر کردن آیتم‌ها بر اساس جستجو
            let filteredItems = currentItems;
            if (currentSearchTerm) {
                filteredItems = currentItems.filter(item =>
                    item.text.toLowerCase().includes(currentSearchTerm)
                );
            }
           
            totalPages = Math.ceil(filteredItems.length / ITEMS_PER_PAGE);
            if (totalPages === 0) totalPages = 1;
           
            // محاسبه آیتم‌های صفحه جاری
            const startIndex = (page - 1) * ITEMS_PER_PAGE;
            const endIndex = Math.min(startIndex + ITEMS_PER_PAGE, filteredItems.length);
            const pageItems = filteredItems.slice(startIndex, endIndex);
           
            // نمایش آیتم‌ها
            populateOptions(pageItems);
           
            // نمایش صفحه‌بندی
            showPagination(filteredItems.length);
        }


         // پر کردن لیست گزینه‌ها
         // پر کردن لیست گزینه‌ها
         function populateOptions(itemsList, searchTerm = '') {
         function populateOptions(itemsList) {
             optionsContainer.innerHTML = '';
             optionsContainer.innerHTML = '';
              
              
خط ۷۸۹: خط ۶۸۹:
                 option.className = 'option-item';
                 option.className = 'option-item';
                  
                  
                 if (searchTerm) {
                 if (currentSearchTerm) {
                    // هایلایت کردن متن جستجو شده
                     const regex = new RegExp(`(${currentSearchTerm})`, 'gi');
                     const regex = new RegExp(`(${searchTerm})`, 'gi');
                     const highlightedText = item.text.replace(regex, '<span class="highlight">$1</span>');
                     const highlightedText = item.text.replace(regex, '<span class="highlight">$1</span>');
                     option.innerHTML = highlightedText;
                     option.innerHTML = highlightedText;
خط ۸۰۴: خط ۷۰۳:
                     optionsList.style.display = 'none';
                     optionsList.style.display = 'none';
                      
                      
                    // نمایش محتوا
                     currentContent = item.value;
                     currentContent = item.value;
                     showContent(item.value, item.text);
                     showContent(item.value, item.text);
خط ۸۱۱: خط ۷۰۹:
                 optionsContainer.appendChild(option);
                 optionsContainer.appendChild(option);
             });
             });
        }
        // نمایش صفحه‌بندی
        function showPagination(totalItems) {
            paginationContainer.innerHTML = '';
           
            if (totalPages <= 1) {
                paginationContainer.style.display = 'none';
                return;
            }
           
            paginationContainer.style.display = 'flex';
           
            // دکمه قبلی
            if (currentPage > 1) {
                const prevButton = document.createElement('button');
                prevButton.innerHTML = '&laquo; قبلی';
                prevButton.addEventListener('click', () => showPage(currentPage - 1));
                paginationContainer.appendChild(prevButton);
            }
           
            // نمایش صفحات
            const startPage = Math.max(1, currentPage - 2);
            const endPage = Math.min(totalPages, currentPage + 2);
           
            for (let i = startPage; i <= endPage; i++) {
                const pageButton = document.createElement('button');
                pageButton.textContent = i;
                if (i === currentPage) {
                    pageButton.classList.add('active');
                }
                pageButton.addEventListener('click', () => showPage(i));
                paginationContainer.appendChild(pageButton);
            }
           
            // دکمه بعدی
            if (currentPage < totalPages) {
                const nextButton = document.createElement('button');
                nextButton.innerHTML = 'بعدی &raquo;';
                nextButton.addEventListener('click', () => showPage(currentPage + 1));
                paginationContainer.appendChild(nextButton);
            }
           
            // اطلاعات صفحه
            const infoText = document.createElement('div');
            infoText.style.marginLeft = '10px';
            infoText.style.fontSize = '12px';
            infoText.style.color = '#6c757d';
            infoText.textContent = `نمایش ${((currentPage-1)*ITEMS_PER_PAGE)+1}-${Math.min(currentPage*ITEMS_PER_PAGE, totalItems)} از ${totalItems}`;
            paginationContainer.appendChild(infoText);
         }
         }


         // نمایش محتوا
         // نمایش محتوا
         function showContent(bookValue, bookText) {
         function showContent(bookValue, bookText) {
            // شبیه‌سازی آدرس‌های واقعی
             const contentUrl = `https://www.pediabible.com/index.php/${bookValue}?action=render`;
             const contentUrl = `https://www.pediabible.com/index.php/${bookValue}?action=render`;
             const wikiUrl = `https://www.pediabible.com/index.php/${bookValue}`;
             const wikiUrl = `https://www.pediabible.com/index.php/${bookValue}`;
خط ۸۲۱: خط ۷۷۰:
             contentTitle.textContent = bookText;
             contentTitle.textContent = bookText;
              
              
             // نمایش loading
             // نمایش وضعیت بارگذاری
             contentFrame.style.display = 'none';
             contentFrame.style.display = 'none';
             iframePlaceholder.style.display = 'flex';
             iframePlaceholder.style.display = 'flex';
خط ۸۲۸: خط ۷۷۷:
                     <i class="fas fa-spinner fa-spin" style="font-size: 1.5rem; color: #3e6f73; margin-bottom: 10px;"></i>
                     <i class="fas fa-spinner fa-spin" style="font-size: 1.5rem; color: #3e6f73; margin-bottom: 10px;"></i>
                     <p>در حال بارگذاری "${bookText}"...</p>
                     <p>در حال بارگذاری "${bookText}"...</p>
                    <p style="font-size: 12px; color: #6c757d; margin-top: 5px;">این ممکن است چند ثانیه طول بکشد</p>
                 </div>
                 </div>
             `;
             `;
خط ۸۳۴: خط ۷۸۴:
             let progress = 0;
             let progress = 0;
             const progressInterval = setInterval(() => {
             const progressInterval = setInterval(() => {
                 progress += Math.random() * 15;
                 progress += Math.random() * 10;
                 if (progress > 90) progress = 90;
                 if (progress > 80) progress = 80;
                 loadingBar.style.width = `${progress}%`;
                 loadingBar.style.width = `${progress}%`;
             }, 200);
             }, 200);
              
              
             // بارگذاری محتوا
             // شبیه‌سازی بارگذاری محتوا
             contentFrame.src = contentUrl;
             setTimeout(() => {
           
            contentFrame.onload = function() {
                 clearInterval(progressInterval);
                 clearInterval(progressInterval);
                 loadingBar.style.width = '100%';
                 loadingBar.style.width = '100%';
خط ۸۴۹: خط ۷۹۷:
                 }, 500);
                 }, 500);
                  
                  
                // در واقعیت اینجا محتوا بارگذاری می‌شود
                 contentFrame.style.display = 'block';
                 contentFrame.style.display = 'block';
                 iframePlaceholder.style.display = 'none';
                 iframePlaceholder.style.display = 'none';
                 applyZoom();
                 applyZoom();
            };
                  
           
                 // نمایش پیام نمونه
            contentFrame.onerror = function() {
                 contentFrame.contentDocument.write(`
                 clearInterval(progressInterval);
                    <html dir="rtl">
                 loadingBar.style.width = '0%';
                     <head><title>${bookText}</title></head>
                 iframePlaceholder.style.display = 'flex';
                    <body style="padding: 20px; font-family: Tahoma;">
                iframePlaceholder.innerHTML = `
                        <h1>${bookText}</h1>
                     <div>
                         <p>این یک نمایش نمونه از محتوای "${bookText}" است.</p>
                        <i class="fas fa-exclamation-triangle" style="font-size: 1.5rem; color: #dc3545; margin-bottom: 10px;"></i>
                        <p>در نسخه واقعی، محتوای کامل اینجا نمایش داده می‌شود.</p>
                         <p>خطا در بارگذاری "${bookText}". لطفاً دوباره تلاش کنید.</p>
                        <hr>
                     </div>
                        <p><small>این یک شبیه‌سازی برای نمایش عملکرد سیستم است.</small></p>
                 `;
                     </body>
                 contentFrame.style.display = 'none';
                    </html>
             };
                 `);
                 contentFrame.contentDocument.close();
             }, 1500);
              
              
             // به‌روزرسانی لینک‌ها
             // به‌روزرسانی لینک‌ها
خط ۹۰۴: خط ۸۵۵:
             }
             }
         });
         });


         function resetContent() {
         function resetContent() {
خط ۹۳۸: خط ۸۸۸:
         });
         });
     </script>
     </script>
   
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
</body>
</body>
</html>
</html>

نسخهٔ ‏۱۶ اکتبر ۲۰۲۵، ساعت ۰۳:۰۳

<!DOCTYPE html> کتابخانه انتشارات دانشنامه کتاب مقدس

کتابخانه دانشنامه کتاب مقدس - نسخه بهینه‌شده

مطالعه آنلاین کتاب‌ها و مقالات مسیحی - بهینه‌شده برای حجم بالای داده

این نسخه برای مدیریت 1000+ مقاله و کتاب بهینه‌سازی شده است

کتابخانه جامع منابع مسیحی - نسخه بهینه

این نسخه از کتابخانه برای مدیریت حجم بالای داده (1000+ مقاله و کتاب) بهینه‌سازی شده و از تکنیک‌های پیشرفته برای حفظ عملکرد استفاده می‌کند.

بهینه‌سازی عملکرد

استفاده از صفحه‌بندی (Pagination) برای نمایش داده‌ها - جستجوی سمت سرور - بارگذاری تدریجی محتوا

مدیریت حافظه

بارگذاری داده‌ها به صورت تدریجی - پاک کردن حافظه کش - بهینه‌سازی الگوریتم‌های جستجو

تجربه کاربری

حفظ سرعت بالا حتی با حجم داده زیاد - نمایش وضعیت بارگذاری - مدیریت خطاهای احتمالی

برای جستجو ابتدا دسته‌بندی انتخاب کنید
لطفاً در کادر بالا جستجو کنید
هیچ محتوایی انتخاب نشده است

لطفاً یک کتاب یا مقاله از لیست انتخاب کنید