openfree commited on
Commit
d1f1bb9
·
1 Parent(s): 2be288b

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +117 -2
index.html CHANGED
@@ -1428,7 +1428,122 @@
1428
  </a>
1429
  </div>
1430
 
1431
- <!-- News Card 12 - 나머지 기사들 -->
1432
  <div class="news-card">
1433
  <a href="https://brunch.co.kr/@seawolf/31" target="_blank" class="news-link">
1434
- <div class="news-thumbnail" style
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1428
  </a>
1429
  </div>
1430
 
1431
+ <!-- News Card 12 - 나머지 기사들 -->
1432
  <div class="news-card">
1433
  <a href="https://brunch.co.kr/@seawolf/31" target="_blank" class="news-link">
1434
+ <div class="news-thumbnail" style="background-image: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);">
1435
+ <span class="news-icon">🎨</span>
1436
+ </div>
1437
+ <div class="news-content">
1438
+ <h3 class="news-title">AI가 그린 '지블리 스타일' 한 달 만에 50만 다운로드</h3>
1439
+ <p class="news-description">한국 AI 팀이 개발한 지블리 스타일 이미지 생성 모델이 글로벌 사용자들에게 폭발적인 인기를 얻고 있습니다.</p>
1440
+ <div class="news-source">
1441
+ <span>📍</span>
1442
+ <span>Brunch</span>
1443
+ </div>
1444
+ </div>
1445
+ </a>
1446
+ </div>
1447
+ </div>
1448
+ </div>
1449
+ </div>
1450
+
1451
+ <!-- Footer -->
1452
+ <footer class="footer">
1453
+ <p>&copy; 2025 K-AI Community. All rights reserved. | Powered by 비드래프트</p>
1454
+ </footer>
1455
+
1456
+ <script>
1457
+ // Tab switching functionality
1458
+ document.addEventListener('DOMContentLoaded', function() {
1459
+ const tabs = document.querySelectorAll('.tab');
1460
+ const tabContents = document.querySelectorAll('.tab-content');
1461
+
1462
+ tabs.forEach(tab => {
1463
+ tab.addEventListener('click', function(e) {
1464
+ e.preventDefault();
1465
+
1466
+ // Remove active class from all tabs and contents
1467
+ tabs.forEach(t => t.classList.remove('active'));
1468
+ tabContents.forEach(tc => tc.classList.remove('active'));
1469
+
1470
+ // Add active class to clicked tab
1471
+ this.classList.add('active');
1472
+
1473
+ // Show corresponding content
1474
+ const targetId = this.getAttribute('data-tab');
1475
+ const targetContent = document.getElementById(targetId);
1476
+ if (targetContent) {
1477
+ targetContent.classList.add('active');
1478
+ }
1479
+ });
1480
+ });
1481
+
1482
+ // Download button click tracking
1483
+ const downloadBtn = document.querySelector('.download-btn');
1484
+ if (downloadBtn) {
1485
+ downloadBtn.addEventListener('click', function() {
1486
+ console.log('Download button clicked');
1487
+ // 파일이 실제로 존재하는지 확인
1488
+ fetch('0723.zip', { method: 'HEAD' })
1489
+ .then(response => {
1490
+ if (!response.ok) {
1491
+ alert('죄송합니다. 현재 다운로드 파일을 준비중입니다. 잠시 후 다시 시도해주세요.');
1492
+ return false;
1493
+ }
1494
+ })
1495
+ .catch(error => {
1496
+ alert('다운로드 중 오류가 발생했습니다. 관리자에게 문의해주세요.');
1497
+ console.error('Download error:', error);
1498
+ });
1499
+ });
1500
+ }
1501
+
1502
+ // Smooth scroll for home button
1503
+ const homeBtn = document.querySelector('.home-btn');
1504
+ if (homeBtn) {
1505
+ homeBtn.addEventListener('click', function(e) {
1506
+ e.preventDefault();
1507
+ // Reset to home tab
1508
+ tabs.forEach(t => t.classList.remove('active'));
1509
+ tabContents.forEach(tc => tc.classList.remove('active'));
1510
+
1511
+ const homeTab = document.querySelector('[data-tab="home"]');
1512
+ const homeContent = document.getElementById('home');
1513
+ if (homeTab && homeContent) {
1514
+ homeTab.classList.add('active');
1515
+ homeContent.classList.add('active');
1516
+ }
1517
+
1518
+ window.scrollTo({ top: 0, behavior: 'smooth' });
1519
+ });
1520
+ }
1521
+
1522
+ // Add hover effect to news cards
1523
+ const newsCards = document.querySelectorAll('.news-card');
1524
+ newsCards.forEach(card => {
1525
+ card.addEventListener('mouseenter', function() {
1526
+ this.style.transform = 'translateY(-5px)';
1527
+ });
1528
+ card.addEventListener('mouseleave', function() {
1529
+ this.style.transform = 'translateY(0)';
1530
+ });
1531
+ });
1532
+
1533
+ // Particle animation enhancement
1534
+ const particles = document.querySelectorAll('.particle');
1535
+ particles.forEach((particle, index) => {
1536
+ particle.style.animationDelay = `${index * 2}s`;
1537
+ particle.style.left = `${Math.random() * 100}%`;
1538
+ });
1539
+ });
1540
+
1541
+ // Add dynamic year to footer
1542
+ const currentYear = new Date().getFullYear();
1543
+ const footerYear = document.querySelector('.footer p');
1544
+ if (footerYear) {
1545
+ footerYear.innerHTML = footerYear.innerHTML.replace('2025', currentYear);
1546
+ }
1547
+ </script>
1548
+ </body>
1549
+ </html>