Heim > Web-Frontend > js-Tutorial > Hauptteil

So erstellen Sie ein Suchfeld mit dynamischen Effekten mithilfe von HTML, CSS und jQuery

王林
Freigeben: 2023-10-25 10:28:57
Original
1107 Leute haben es durchsucht

So erstellen Sie ein Suchfeld mit dynamischen Effekten mithilfe von HTML, CSS und jQuery

So erstellen Sie ein Suchfeld mit dynamischen Effekten mit HTML, CSS und jQuery

In der modernen Webentwicklung besteht ein häufiger Bedarf darin, ein Suchfeld mit dynamischen Effekten zu erstellen. Dieses Suchfeld kann Suchvorschläge in Echtzeit anzeigen und Schlüsselwörter automatisch vervollständigen, während der Benutzer sie eingibt. In diesem Artikel wird detailliert beschrieben, wie Sie mit HTML, CSS und jQuery ein solches Suchfeld implementieren.

  1. HTML-Struktur erstellen

Zuerst müssen wir eine grundlegende HTML-Struktur erstellen. Der Code lautet wie folgt:

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>动态搜索框</title>
  <link rel="stylesheet" href="styles.css">
</head>

<body>
  <div class="container">
    <h1>动态搜索框</h1>
    <input type="text" id="search-input" placeholder="请输入关键词">
    <ul id="suggestion-list"></ul>
  </div>

  <script src="jquery.min.js"></script>
  <script src="script.js"></script>
</body>

</html>
Nach dem Login kopieren

Diese HTML-Struktur enthält ein Container-Div, das einen Titel und ein Eingabefeld für die Suche enthält. Wir haben außerdem ein ul-Element erstellt, um Suchvorschläge anzuzeigen.

  1. CSS-Stile schreiben

Als nächstes müssen wir CSS-Stile schreiben, um dem Suchfeld einige grundlegende Stile hinzuzufügen, damit es schöner aussieht. Der Code lautet wie folgt:

.container {
  max-width: 500px;
  margin: 0 auto;
  padding: 20px;
  text-align: center;
}

h1 {
  font-size: 24px;
}

input[type="text"] {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  margin-bottom: 10px;
}

#suggestion-list {
  text-align: left;
  list-style-type: none;
  padding: 0;
  display: none;
}

#suggestion-list li {
  padding: 10px;
  background-color: #f2f2f2;
  cursor: pointer;
}

#suggestion-list li:hover {
  background-color: #e3e3e3;
}
Nach dem Login kopieren

Diese CSS-Stile fügen dem Container, dem Titel, dem Eingabefeld und der Suchvorschlagsliste einen geeigneten Stil hinzu, damit er professioneller aussieht.

  1. Funktion für Suchvorschläge hinzufügen

Jetzt müssen wir jQuery verwenden, um die Funktion für Suchvorschläge zu implementieren. Der Code lautet wie folgt:

$(document).ready(function() {
  $('#search-input').keyup(function() {
    var keyword = $(this).val();
    if (keyword !== '') {
      $.ajax({
        url: 'suggestion.php',
        type: 'POST',
        data: { keyword: keyword },
        success: function(data) {
          if (data.trim() !== '') {
            $('#suggestion-list').html(data).show();
          } else {
            $('#suggestion-list').html('').hide();
          }
        }
      });
    } else {
      $('#suggestion-list').html('').hide();
    }
  });

  $(document).on('click', '#suggestion-list li', function() {
    var suggestion = $(this).text();
    $('#search-input').val(suggestion);
    $('#suggestion-list').html('').hide();
  });
});
Nach dem Login kopieren

Dieser Code lauscht zunächst auf die Tastaturereignisse des Eingabefelds. Wenn der Benutzer eine Eingabe macht, sendet er mithilfe von AJAX eine Anfrage an eine Backend-Datei namens suggestion.php und übergibt die vom Benutzer eingegebenen Schlüsselwörter zum Backend. Das Backend gibt entsprechende Suchvorschläge zurück, und dann aktualisiert das Frontend die Suchvorschlagsliste basierend auf den zurückgegebenen Daten dynamisch.

Wenn der Benutzer auf ein Element in der Suchvorschlagsliste klickt, wird der Inhalt des Elements in das Eingabefeld gefüllt und die Suchvorschlagsliste ausgeblendet.

  1. Schreiben Sie den Backend-Code (suggestion.php)

Für den Backend-Code können wir PHP oder andere serverseitige Sprachen verwenden, um ihn zu implementieren. Hier nehmen wir PHP als Beispiel, um einen einfachen Beispielcode zu zeigen:

<?php
$keyword = $_POST['keyword'];

// 从数据库或其他数据源获取搜索建议
$suggestions = array(
  '苹果',
  '香蕉',
  '橙子',
  '草莓',
  '葡萄',
  '西瓜',
  '梨',
  '柚子'
);

$output = '';
foreach ($suggestions as $s) {
  if (strpos($s, $keyword) !== false) {
    $output .= '<li>' . $s . '</li>';
  }
}

echo $output;
?>
Nach dem Login kopieren

Dieser Code empfängt die vom Frontend übergebenen Schlüsselwörter und erhält anhand der Schlüsselwörter passende Suchvorschläge aus der Datenbank oder anderen Datenquellen. Anschließend werden die Vorschläge in HTML-Listenelemente im erforderlichen Format gespleißt und an das Frontend zurückgegeben.

  1. Ausführen

Nachdem Sie den obigen Code als entsprechende Datei gespeichert und die entsprechende CSS- und JavaScript-Bibliothek importiert haben, öffnen Sie den Browser und führen Sie die HTML-Datei aus. Sie sehen dann ein Suchfeld mit dynamischen Effekten.

Zusammenfassung

Durch die Verwendung von HTML, CSS und jQuery können wir ganz einfach ein Suchfeld mit dynamischen Effekten erstellen. Durch die Überwachung der Benutzereingaben, das Senden von AJAX-Anfragen an das Backend, um Suchvorschläge zu erhalten, und die dynamische Aktualisierung der Suchvorschlagsliste können Benutzer problemlos Suchvorschläge auswählen oder Schlüsselwörter für die Suche direkt eingeben. Dieses Suchfeld kann in den Suchfunktionen verschiedener Websites verwendet werden, um Benutzern ein besseres Erlebnis zu bieten.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie ein Suchfeld mit dynamischen Effekten mithilfe von HTML, CSS und jQuery. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!