leonsimon23 commited on
Commit
2b701a7
·
verified ·
1 Parent(s): fe9b8a5

Update templates/index.html

Browse files
Files changed (1) hide show
  1. templates/index.html +30 -12
templates/index.html CHANGED
@@ -304,7 +304,7 @@
304
  <body>
305
  <div class="container">
306
  <header class="header">
307
- <h1>🏥 皮镜 (SkinLens)</h1>
308
  <p>AI驱动的智能皮肤疾病诊断与分析平台</p>
309
  </header>
310
 
@@ -316,7 +316,7 @@
316
  </h2>
317
 
318
  <form id="analysisForm" enctype="multipart/form-data">
319
- <div class="upload-area" id="uploadArea">
320
  <i data-lucide="camera"></i>
321
  <h3>上传皮肤图像</h3>
322
  <p>拖拽图片到此处或点击选择文件</p>
@@ -324,10 +324,10 @@
324
  支持 JPG, PNG, GIF 格式,最大10MB
325
  </p>
326
  <input type="file" id="imageInput" name="image" accept="image/*" style="display: none;">
327
- </div>
328
-
329
  <div id="imagePreview"></div>
330
-
331
  <div style="margin: 25px 0;">
332
  <label for="textInput" style="display: block; margin-bottom: 10px; font-weight: 600;">
333
  <i data-lucide="file-text"></i> 症状描述或问题咨询:
@@ -339,7 +339,7 @@
339
  placeholder="请描述患者的症状、病史、用药情况或其他相关信息...&#10;例如:患者皮肤出现红疹,伴有瘙痒,持续一周..."
340
  ></textarea>
341
  </div>
342
-
343
  <button type="submit" id="submitBtn" class="submit-btn">
344
  <i data-lucide="brain"></i>
345
  开始AI诊断分析
@@ -359,7 +359,7 @@
359
  <ul style="margin-left: 20px; margin-top: 10px;">
360
  <li>📸 支持皮肤图像上传与分析</li>
361
  <li>💬 结合文字症状描述</li>
362
-
363
  <li>⚡ 快速准确的诊断建议</li>
364
  <li>📋 详细的治疗方案推荐</li>
365
  </ul>
@@ -392,18 +392,36 @@
392
  const results = document.getElementById('results');
393
  const imagePreview = document.getElementById('imagePreview');
394
  const form = document.getElementById('analysisForm');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
395
 
396
- // 上传区域的点击和拖放逻辑
397
- uploadArea.addEventListener('click', () => imageInput.click());
398
- imageInput.addEventListener('change', (e) => handleFile(e.target.files[0]));
399
- uploadArea.addEventListener('dragover', (e) => { e.preventDefault(); uploadArea.classList.add('dragover'); });
400
- uploadArea.addEventListener('dragleave', () => uploadArea.classList.remove('dragover'));
401
  uploadArea.addEventListener('drop', (e) => {
402
  e.preventDefault();
403
  uploadArea.classList.remove('dragover');
404
  const file = e.dataTransfer.files[0];
405
  if (file && file.type.startsWith('image/')) {
 
406
  handleFile(file);
 
 
 
 
407
  }
408
  });
409
 
 
304
  <body>
305
  <div class="container">
306
  <header class="header">
307
+ <h1> 皮镜 (SkinLens)</h1>
308
  <p>AI驱动的智能皮肤疾病诊断与分析平台</p>
309
  </header>
310
 
 
316
  </h2>
317
 
318
  <form id="analysisForm" enctype="multipart/form-data">
319
+ <label for="imageInput" class="upload-area" id="uploadArea">
320
  <i data-lucide="camera"></i>
321
  <h3>上传皮肤图像</h3>
322
  <p>拖拽图片到此处或点击选择文件</p>
 
324
  支持 JPG, PNG, GIF 格式,最大10MB
325
  </p>
326
  <input type="file" id="imageInput" name="image" accept="image/*" style="display: none;">
327
+ </label>
328
+
329
  <div id="imagePreview"></div>
330
+
331
  <div style="margin: 25px 0;">
332
  <label for="textInput" style="display: block; margin-bottom: 10px; font-weight: 600;">
333
  <i data-lucide="file-text"></i> 症状描述或问题咨询:
 
339
  placeholder="请描述患者的症状、病史、用药情况或其他相关信息...&#10;例如:患者皮肤出现红疹,伴有瘙痒,持续一周..."
340
  ></textarea>
341
  </div>
342
+
343
  <button type="submit" id="submitBtn" class="submit-btn">
344
  <i data-lucide="brain"></i>
345
  开始AI诊断分析
 
359
  <ul style="margin-left: 20px; margin-top: 10px;">
360
  <li>📸 支持皮肤图像上传与分析</li>
361
  <li>💬 结合文字症状描述</li>
362
+ <li>🤖 基于Gemini-2.0-Pro AI模型</li>
363
  <li>⚡ 快速准确的诊断建议</li>
364
  <li>📋 详细的治疗方案推荐</li>
365
  </ul>
 
392
  const results = document.getElementById('results');
393
  const imagePreview = document.getElementById('imagePreview');
394
  const form = document.getElementById('analysisForm');
395
+
396
+ // 文件输入框改变事件,处理文件预览
397
+ imageInput.addEventListener('change', (e) => {
398
+ const file = e.target.files[0];
399
+ if (file) {
400
+ handleFile(file);
401
+ }
402
+ });
403
+
404
+ // 拖放事件处理
405
+ uploadArea.addEventListener('dragover', (e) => {
406
+ e.preventDefault();
407
+ uploadArea.classList.add('dragover');
408
+ });
409
+
410
+ uploadArea.addEventListener('dragleave', () => {
411
+ uploadArea.classList.remove('dragover');
412
+ });
413
 
 
 
 
 
 
414
  uploadArea.addEventListener('drop', (e) => {
415
  e.preventDefault();
416
  uploadArea.classList.remove('dragover');
417
  const file = e.dataTransfer.files[0];
418
  if (file && file.type.startsWith('image/')) {
419
+ // 将文件传递给 handleFile 函数
420
  handleFile(file);
421
+ // 也要设置到 file input 中,以便表单能提交
422
+ const dataTransfer = new DataTransfer();
423
+ dataTransfer.items.add(file);
424
+ imageInput.files = dataTransfer.files;
425
  }
426
  });
427