کتابخانه دانشنامه کتاب مقدس: تفاوت میان نسخهها
بدون خلاصۀ ویرایش |
بدون خلاصۀ ویرایش |
||
(۳۱ نسخهٔ میانیِ ایجادشده توسط همین کاربر نشان داده نشد) | |||
خط ۳: | خط ۳: | ||
<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> | ||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> | <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> | ||
<style> | <style> | ||
* { | * { | ||
خط ۱۳۶: | خط ۱۷: | ||
color: #333; | color: #333; | ||
line-height: 1.6; | line-height: 1.6; | ||
} | } | ||
.container { | .container { | ||
max-width: | max-width: 1200px; | ||
margin: 0; | margin: 0 auto; | ||
background: white; | background: white; | ||
} | } | ||
خط ۱۵۱: | خط ۲۹: | ||
color: white; | color: white; | ||
padding: 20px 15px; | padding: 20px 15px; | ||
text-align: center; | text-align: center; | ||
} | } | ||
خط ۱۶۵: | خط ۴۲: | ||
font-size: 13px; | font-size: 13px; | ||
margin-top: 8px; | margin-top: 8px; | ||
} | } | ||
خط ۱۷۳: | خط ۴۹: | ||
margin: 0 15px 15px; | margin: 0 15px 15px; | ||
border-radius: 8px; | border-radius: 8px; | ||
border: | border: 1px solid #e9ecef; | ||
} | } | ||
خط ۱۸۶: | خط ۶۲: | ||
text-align: justify; | text-align: justify; | ||
font-size: 14px; | font-size: 14px; | ||
} | } | ||
خط ۲۰۰: | خط ۷۵: | ||
padding: 15px; | padding: 15px; | ||
border-radius: 6px; | border-radius: 6px; | ||
border: | border-left: 4px solid #3e6f73; | ||
} | } | ||
خط ۲۱۲: | خط ۸۷: | ||
font-size: 13px; | font-size: 13px; | ||
color: #666; | color: #666; | ||
} | } | ||
خط ۲۱۹: | خط ۹۳: | ||
background: #f8f9fa; | background: #f8f9fa; | ||
padding: 15px; | padding: 15px; | ||
border: | border: 1px solid #dee2e6; | ||
} | } | ||
خط ۲۲۵: | خط ۹۹: | ||
display: flex; | display: flex; | ||
gap: 10px; | gap: 10px; | ||
} | } | ||
.form-group { | .form-group { | ||
flex: 1; | flex: 1; | ||
position: relative; | |||
} | } | ||
خط ۲۴۳: | خط ۱۱۷: | ||
width: 100%; | width: 100%; | ||
padding: 10px 12px; | padding: 10px 12px; | ||
border: | border: 1px solid #ced4da; | ||
border-radius: 6px; | |||
font-size: 13px; | |||
background: white; | |||
cursor: pointer; | |||
} | |||
.searchable-select { | |||
position: relative; | |||
} | |||
.select-display { | |||
width: 100%; | |||
padding: 10px 12px; | |||
border: 1px solid #ced4da; | |||
border-radius: 6px; | border-radius: 6px; | ||
font-size: 13px; | font-size: 13px; | ||
background: white; | background: white; | ||
cursor: pointer; | cursor: pointer; | ||
text-align: right; | |||
position: relative; | |||
} | } | ||
select: | .select-display:after { | ||
content: "▼"; | |||
position: absolute; | |||
left: 12px; | |||
top: 50%; | |||
transform: translateY(-50%); | |||
font-size: 10px; | |||
color: #6c757d; | |||
} | } | ||
.options-list { | |||
background- | position: absolute; | ||
top: 100%; | |||
left: 0; | |||
right: 0; | |||
background: white; | |||
border: 1px solid #ced4da; | |||
border-radius: 6px; | |||
max-height: 400px; | |||
overflow-y: auto; | |||
z-index: 1000; | |||
display: none; | |||
box-shadow: 0 4px 12px rgba(0,0,0,0.1); | |||
} | |||
.search-box { | |||
padding: 10px; | |||
border-bottom: 1px solid #e9ecef; | |||
background: #f8f9fa; | |||
position: sticky; | |||
top: 0; | |||
} | |||
.search-input { | |||
width: 100%; | |||
padding: 8px 12px; | |||
border: 1px solid #ced4da; | |||
border-radius: 4px; | |||
font-size: 13px; | |||
} | |||
.options-container { | |||
max-height: 300px; | |||
overflow-y: auto; | |||
} | |||
.option-item { | |||
padding: 10px 12px; | |||
cursor: pointer; | |||
border-bottom: 1px solid #f1f1f1; | |||
font-size: 13px; | |||
} | |||
.option-item:hover { | |||
background: #f0f8f0; | |||
} | |||
.highlight { | |||
background: #fff3cd; | |||
font-weight: bold; | |||
padding: 1px 2px; | |||
border-radius: 2px; | |||
} | |||
.no-results { | |||
color: #6c757d; | color: #6c757d; | ||
font-style: italic; | |||
text-align: center; | |||
padding: 15px; | |||
} | } | ||
.content-frame { | .content-frame { | ||
margin: 0 15px; | margin: 0 15px; | ||
border: | border: 1px solid #dee2e6; | ||
overflow: hidden; | overflow: hidden; | ||
background: white; | background: white; | ||
height: | height: 500px; | ||
} | } | ||
.content-header { | .content-header { | ||
padding: 12px 15px; | padding: 12px 15px; | ||
background: #f8f9fa; | background: #f8f9fa; | ||
border-bottom: | border-bottom: 1px solid #dee2e6; | ||
display: flex; | display: flex; | ||
justify-content: space-between; | justify-content: space-between; | ||
خط ۲۹۶: | خط ۲۴۱: | ||
.control-btn { | .control-btn { | ||
background: white; | background: white; | ||
border: | border: 1px solid #dee2e6; | ||
border-radius: 4px; | border-radius: 4px; | ||
padding: 6px 12px; | padding: 6px 12px; | ||
cursor: pointer; | cursor: pointer; | ||
font-size: 12px; | font-size: 12px; | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
gap: 4px; | gap: 4px; | ||
} | } | ||
خط ۳۴۶: | خط ۲۸۲: | ||
padding: 12px 15px; | padding: 12px 15px; | ||
background-color: #f8f9fa; | background-color: #f8f9fa; | ||
border-top: | border-top: 1px solid #dee2e6; | ||
gap: 8px; | gap: 8px; | ||
} | } | ||
خط ۳۵۷: | خط ۲۹۳: | ||
padding: 10px 15px; | padding: 10px 15px; | ||
border-radius: 4px; | border-radius: 4px; | ||
font-size: 13px; | font-size: 13px; | ||
text-align: center; | text-align: center; | ||
خط ۳۶۶: | خط ۳۰۰: | ||
justify-content: center; | justify-content: center; | ||
gap: 6px; | gap: 6px; | ||
} | } | ||
خط ۳۷۵: | خط ۳۰۸: | ||
.view-link { | .view-link { | ||
background: #4a7c59; | background: #4a7c59; | ||
} | } | ||
خط ۳۹۰: | خط ۳۱۸: | ||
top: 0; | top: 0; | ||
right: 0; | right: 0; | ||
} | } | ||
خط ۴۱۵: | خط ۳۲۶: | ||
.content-frame { | .content-frame { | ||
height: | height: 400px; | ||
} | } | ||
خط ۴۳۶: | خط ۳۴۶: | ||
width: 100%; | width: 100%; | ||
justify-content: space-between; | justify-content: space-between; | ||
} | } | ||
} | } | ||
خط ۴۵۷: | خط ۳۵۱: | ||
</head> | </head> | ||
<body> | <body> | ||
<div class="container"> | <div class="container"> | ||
<header class="header"> | <header class="header"> | ||
<h1>کتابخانه | <h1>کتابخانه دانشنامه کتاب مقدس</h1> | ||
<p class="description">مطالعه آنلاین کتابها و مقالات | <p class="description">مطالعه آنلاین کتابها و مقالات مسیحی</p> | ||
</header> | </header> | ||
<section class="seo-content"> | <section class="seo-content"> | ||
<h2>کتابخانه جامع منابع | <h2>کتابخانه جامع منابع مسیحی</h2> | ||
<p> | <p>کتابخانهٔ دانشنامهٔ کتاب مقدس مرجع کامل و تخصصی برای مطالعهٔ آنلاین کتابها و مقالات مسیحی است.</p> | ||
<div class="content-list"> | <div class="content-list"> | ||
<div class="content-item"> | <div class="content-item"> | ||
<h3> | <h3>کتابها</h3> | ||
<p> | <p>انتشار همهٔ کتابها در دانشنامه با اجازهٔ رسمی نویسندگان یا ناشران انجام شده است، و برای برخی آثار، مجوز چاپ مجدد نیز دریافت گردیده است. تمامی حقوق برای انتشارات دانشنامهٔ کتاب مقدس محفوظ است. | ||
نویسندگان و ناشران مسیحی میتوانند برای همکاری و انتشار آثار خود با ما در ارتباط باشند.</p> | |||
</div> | |||
<div class="content-item"> | |||
<h3>مقالات</h3> | |||
<p>مقالات دانشنامه با اجازهٔ نویسندگان یا بر اساس منابع عمومی و بدون حق کپیرایت منتشر میشوند. در همهٔ موارد، اصول امانتداری و احترام به منبع اصلی رعایت شده است. | |||
پژوهشگران و نویسندگان مسیحی میتوانند برای انتشار مقالات خود با ما همکاری کنند</p> | |||
</div> | </div> | ||
<div class="content-item"> | <div class="content-item"> | ||
<h3> | <h3>فروشگاه کتاب</h3> | ||
<p> | <p>در فروشگاه کتاب دانشنامه، امکان خرید کتابهای چاپی و الکترونیکی فراهم شده است.</p> | ||
</div> | </div> | ||
</div> | </div> | ||
</section> | </section> | ||
<section class="filter-section | <section class="filter-section"> | ||
<div class="filter-row"> | <div class="filter-row"> | ||
<div class="form-group"> | <div class="form-group"> | ||
خط ۴۹۱: | خط ۳۸۷: | ||
<option value="کتاب">کتاب</option> | <option value="کتاب">کتاب</option> | ||
<option value="مقاله">مقاله</option> | <option value="مقاله">مقاله</option> | ||
<option value="فروشگاه کتاب">فروشگاه کتاب</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> | ||
<select id=" | <div class="searchable-select"> | ||
< | <div class="select-display" id="selectDisplay">لطفاً دستهبندی انتخاب کنید</div> | ||
</ | <div class="options-list" id="optionsList"> | ||
<div class="search-box"> | |||
<input type="text" class="search-input" id="searchInput" placeholder="جستجو در محتواها..."> | |||
</div> | |||
<div class="options-container" id="optionsContainer"> | |||
<div class="no-results">لطفاً ابتدا یک دستهبندی انتخاب کنید</div> | |||
</div> | |||
</div> | |||
</div> | |||
<input type="hidden" id="selectedContentValue"> | |||
</div> | </div> | ||
</div> | </div> | ||
</section> | </section> | ||
<section class="content-frame | <section class="content-frame"> | ||
<div class="content-header"> | <div class="content-header"> | ||
<div class="content-title" id="contentTitle">هیچ محتوایی انتخاب نشده است</div> | <div class="content-title" id="contentTitle">هیچ محتوایی انتخاب نشده است</div> | ||
خط ۵۴۰: | خط ۴۴۶: | ||
<script> | <script> | ||
// دادههای | // دادههای واقعی | ||
const booksData = { | const booksData = { | ||
'کتاب': [ | 'کتاب': [ | ||
{ value: ' | { value: 'کتاب_مسیحیت_در_ایران_تا_صدر_اسلام', text: 'کتاب مسیحیت در ایران تا صدر اسلام' }, | ||
{ value: ' | { value: '...', text: 'بزودی' }, | ||
{ value: ' | { value: '...', text: 'بزودی' } | ||
], | ], | ||
'مقاله': [ | 'مقاله': [ | ||
{ value: ' | { value: 'مقاله_۸_تفاوت_کلیدی_بین_کاتولیکها_و_پروتستانها_نویسنده', text: 'مقاله: ۸ تفاوت کلیدی بین کاتولیکها و پروتستانها' }, | ||
{ value: ' | { value: 'مقاله_برادران،_ما_تحلیل%E2%80%8Cگران_سیاسی_نیستیم', text: 'مقاله: برادران، ما تحلیلگران سیاسی نیستیم' }, | ||
{ value: ' | { value: 'مقاله_گناه_آدمی_را_نادان_میکند', text: 'مقاله: گناه آدمی را نادان میکند' }, | ||
{ value: ' | { value: 'مقاله_۴_دلیل_که_چرا_کتاب_مقدس_از_تراجنسیتی_بودن_حمایت_نمی%E2%80%8Cکند', text: 'مقاله: ۴ دلیل که چرا کتاب مقدس از تراجنسیتی بودن حمایت نمیکند' }, | ||
{ value: '۱۰_معنای_یهوه', text: 'مقاله: ۱۰ معنای یهوه' }, | |||
{ value: 'تدریس،_آموزش_و_مطالعه', text: 'مقاله: تدریس، آموزش و مطالعه' }, | |||
{ value: 'خدمت_به_خدا_یعنی_چه', text: 'مقاله: خدمت به خدا یعنی چه' }, | |||
{ value: '...', text: 'بزودی' }, | |||
{ value: '...', text: 'بزودی' }, | |||
{ value: '...', text: 'بزودی' } | |||
], | |||
'فروشگاه کتاب': [ | |||
{ value: 'کتاب_اسلحه_هایی_در_جنگ_علیه_نیروهای_شیطانی', text: 'اسلحه هایی در جنگ علیه نیروهای شیطانی' }, | |||
{ value: 'کتاب_شناخت_عطیه_های_روح_القدس_در_تعلیم_و_عمل', text: 'شناخت عطیه های روح القدس در تعلیم و عمل' }, | |||
{ value: 'کتاب_کشف_عطیه_های_روح_القدس_در_خود', text: 'کشف عطیه های روح القدس در خود' }, | |||
{ value: 'کتاب_اسلحه_هایی_در_جنگ_علیه_نیروهای_شیطانی', text: 'اسلحه هایی در جنگ علیه نیروهای شیطانی' }, | |||
{ value: 'کتاب_گشودن_وعده_های_ابراهیم', text: 'گشودن وعده های ابراهیم' }, | |||
{ value: 'کتاب_رهبری_روحانی', text: 'کتاب رهبری روحانی' }, | |||
{ value: 'کتاب_ژنرالهای_خدا', text: 'ژنرال های خدا' }, | |||
{ value: 'بزودی', text: 'بزودی' }, | |||
{ value: 'بزودی', text: 'بزودی' }, | |||
{ value: 'بزودی', text: 'بزودی' } | |||
] | ] | ||
}; | }; | ||
// عناصر | // عناصر DOM | ||
const categorySelect = document.getElementById('categorySelect'); | const categorySelect = document.getElementById('categorySelect'); | ||
const | const selectDisplay = document.getElementById('selectDisplay'); | ||
const searchInput = document.getElementById('searchInput'); | |||
const optionsList = document.getElementById('optionsList'); | |||
const optionsContainer = document.getElementById('optionsContainer'); | |||
const selectedContentValue = document.getElementById('selectedContentValue'); | |||
const contentFrame = document.getElementById('contentFrame'); | const contentFrame = document.getElementById('contentFrame'); | ||
const iframePlaceholder = document.getElementById('iframePlaceholder'); | const iframePlaceholder = document.getElementById('iframePlaceholder'); | ||
خط ۵۷۲: | خط ۵۰۰: | ||
let currentZoom = 100; | let currentZoom = 100; | ||
let currentContent = ''; | let currentContent = ''; | ||
let currentItems = []; | |||
// وقتی دستهبندی تغییر کرد | // وقتی دستهبندی تغییر کرد | ||
خط ۵۷۸: | خط ۵۰۷: | ||
if (!selectedCategory) { | if (!selectedCategory) { | ||
selectDisplay.textContent = 'لطفاً دستهبندی انتخاب کنید'; | |||
selectDisplay.style.color = '#6c757d'; | |||
selectedContentValue.value = ''; | |||
optionsList.style.display = 'none'; | |||
resetContent(); | resetContent(); | ||
return; | return; | ||
} | } | ||
// | // فعال کردن نمایش | ||
selectDisplay.textContent = 'برای مشاهده محتوا کلیک کنید'; | |||
selectDisplay.style.color = '#333'; | |||
selectedContentValue.value = ''; | |||
currentItems = booksData[selectedCategory]; | |||
resetContent(); | |||
}); | |||
// وقتی روی نمایش کلیک میشود | |||
selectDisplay.addEventListener('click', function() { | |||
} | if (!categorySelect.value) { | ||
alert('لطفاً ابتدا یک دستهبندی انتخاب کنید'); | |||
categorySelect.focus(); | |||
return; | |||
} | |||
if (optionsList.style.display === 'block') { | |||
optionsList.style.display = 'none'; | |||
} else { | |||
optionsList.style.display = 'block'; | |||
searchInput.value = ''; | |||
// در اینجا تابع populateOptions فراخوانی میشود | |||
populateOptions(currentItems); | |||
setTimeout(() => { | |||
searchInput.focus(); | |||
}, 100); | |||
} | |||
}); | |||
// وقتی کاربر در فیلد جستجو تایپ میکند | |||
searchInput.addEventListener('input', function() { | |||
const searchTerm = this.value.toLowerCase(); | |||
const filteredItems = currentItems.filter(item => | |||
item.text.toLowerCase().includes(searchTerm) | |||
); | |||
populateOptions(filteredItems, searchTerm); | |||
}); | }); | ||
// | // پر کردن لیست گزینهها - این تابع اکنون به درستی فراخوانی میشود | ||
function populateOptions(itemsList, searchTerm = '') { | |||
console.log('populateOptions فراخوانی شد با', itemsList.length, 'آیتم'); | |||
if ( | optionsContainer.innerHTML = ''; | ||
if (itemsList.length === 0) { | |||
const noResult = document.createElement('div'); | |||
noResult.className = 'no-results'; | |||
noResult.textContent = 'نتیجهای یافت نشد'; | |||
optionsContainer.appendChild(noResult); | |||
return; | return; | ||
} | } | ||
currentContent = | itemsList.forEach(item => { | ||
const option = document.createElement('div'); | |||
option.className = 'option-item'; | |||
if (searchTerm) { | |||
// هایلایت کردن متن جستجو شده | |||
const regex = new RegExp(`(${searchTerm})`, 'gi'); | |||
const highlightedText = item.text.replace(regex, '<span class="highlight">$1</span>'); | |||
option.innerHTML = highlightedText; | |||
} else { | |||
option.textContent = item.text; | |||
} | |||
option.addEventListener('click', function() { | |||
selectDisplay.textContent = item.text; | |||
selectDisplay.style.color = '#333'; | |||
selectedContentValue.value = item.value; | |||
optionsList.style.display = 'none'; | |||
// نمایش محتوا | |||
currentContent = item.value; | |||
showContent(item.value, item.text); | |||
}); | |||
optionsContainer.appendChild(option); | |||
}); | |||
} | |||
// نمایش محتوا | // نمایش محتوا | ||
خط ۷۲۱: | خط ۷۰۷: | ||
loadingBar.style.width = '0%'; | loadingBar.style.width = '0%'; | ||
} | } | ||
// بستن لیست وقتی کاربر در جای دیگری کلیک میکند | |||
document.addEventListener('click', function(event) { | |||
if (!event.target.closest('.searchable-select')) { | |||
optionsList.style.display = 'none'; | |||
} | |||
}); | |||
// مدیریت کلیدهای کیبورد | |||
searchInput.addEventListener('keydown', function(event) { | |||
if (event.key === 'Escape') { | |||
optionsList.style.display = 'none'; | |||
} | |||
}); | |||
// لاگ برای دیباگ | |||
console.log('سیستم بارگذاری شد. حالا میتوانید تست کنید:'); | |||
console.log('1. یک دستهبندی انتخاب کنید'); | |||
console.log('2. روی "برای مشاهده محتوا کلیک کنید" کلیک کنید'); | |||
console.log('3. لیست محتواها نمایش داده میشود'); | |||
</script> | </script> | ||
</body> | </body> | ||
</html> | </html> |
نسخهٔ کنونی تا ۱۶ اکتبر ۲۰۲۵، ساعت ۱۷:۵۶
کتابخانه دانشنامه کتاب مقدس
مطالعه آنلاین کتابها و مقالات مسیحی
کتابخانه جامع منابع مسیحی
کتابخانهٔ دانشنامهٔ کتاب مقدس مرجع کامل و تخصصی برای مطالعهٔ آنلاین کتابها و مقالات مسیحی است.
کتابها
انتشار همهٔ کتابها در دانشنامه با اجازهٔ رسمی نویسندگان یا ناشران انجام شده است، و برای برخی آثار، مجوز چاپ مجدد نیز دریافت گردیده است. تمامی حقوق برای انتشارات دانشنامهٔ کتاب مقدس محفوظ است. نویسندگان و ناشران مسیحی میتوانند برای همکاری و انتشار آثار خود با ما در ارتباط باشند.
مقالات
مقالات دانشنامه با اجازهٔ نویسندگان یا بر اساس منابع عمومی و بدون حق کپیرایت منتشر میشوند. در همهٔ موارد، اصول امانتداری و احترام به منبع اصلی رعایت شده است. پژوهشگران و نویسندگان مسیحی میتوانند برای انتشار مقالات خود با ما همکاری کنند
فروشگاه کتاب
در فروشگاه کتاب دانشنامه، امکان خرید کتابهای چاپی و الکترونیکی فراهم شده است.
لطفاً یک کتاب یا مقاله از لیست انتخاب کنید