JQuery-Baum URL entfernen

WBOY
Freigeben: 2023-05-28 17:48:38
Original
559 Leute haben es durchsucht

In der vergangenen Webentwicklung gab es eine zunehmende Nachfrage nach der Verwendung von JavaScript-Bibliotheken. Unter anderem ist jQuery eine schnelle und übersichtliche JavaScript-Bibliothek, die von John Resig erstellt wurde und viele häufig verwendete Funktionen wie DOM-Operationen, Ereignisbehandlung, AJAX-Anforderungen usw. kapselt. In der Webentwicklung ist es häufig erforderlich, Daten in einer Baumstruktur anzuzeigen und zu verarbeiten. Für diesen Bedarf ist der jQuery-Baum ein häufig verwendetes Werkzeug.

Bei der Verwendung des jQuery-Baums für die Datenanzeige haben viele Entwickler jedoch Probleme damit, den URL-Link auf dem Knoten zu entfernen, um Fehlbedienungen durch den Benutzer zu vermeiden. In diesem Artikel wird detailliert beschrieben, wie diese Funktion implementiert wird.

1. Den jQuery-Baum verstehen

Bevor wir mit dem Entfernen von URL-Links auf Knoten beginnen, müssen wir zunächst die jQuery-Baumstruktur und die damit verbundenen Grundoperationen verstehen. jQuery Tree ist eine Front-End-JavaScript-Bibliothek, die zum Anzeigen und Bearbeiten baumstrukturierter Daten verwendet wird. Beispielsweise können wir den jQuery-Baum verwenden, um baumförmige Daten in Szenarien wie Produktkategorien, Abteilungsstrukturebenen usw. anzuzeigen.

Wenn sich ein Knoten im erweiterten Zustand befindet, zeigt der Knoten im Allgemeinen einen URL-Link an, sodass Benutzer direkt auf den vom Knoten dargestellten Inhalt zugreifen können. In einigen tatsächlichen Projekten müssen Entwickler diesen URL-Link jedoch ausblenden, um zu verhindern, dass Benutzer versehentlich auf den Knoten klicken, wodurch die Seite springt und die Benutzererfahrung beeinträchtigt wird.

2. Methoden zum Entfernen von jQuery-Baumknoten-URL-Links

Beim Entfernen von Knoten-URL-Links können wir die folgenden zwei Methoden verwenden.

1. Entfernung durch CSS-Stile

Wir können das href-Attribut in allen a-Tags (Links) über CSS-Stileinstellungen auf eine leere Zeichenfolge setzen und so den Zweck erreichen, Knoten-URL-Links auszublenden. Der spezifische Implementierungscode lautet wie folgt:

$(document).ready(function(){
  $(".tree li:has(ul)").addClass("parent_li");
  $(".tree li.parent_li > span").attr("title", "Collapse this branch");
  $(".tree li.parent_li > span").children("i:first-child").addClass("glyphicon-folder-open");
  $(".tree li.parent_li > span").children("i:first-child").removeClass("glyphicon-folder-close");

  $(".tree li.parent_li > span").on("click", function (e) {
    var children = $(this).parent("li.parent_li").find(" > ul > li");
    if (children.is(":visible")) {
        children.hide("fast");
        $(this).attr("title", "Expand this branch").children("i:first-child").addClass("glyphicon-folder-close").removeClass("glyphicon-folder-open");
    } else {
        children.show("fast");
        $(this).attr("title", "Collapse this branch").children("i:first-child").addClass("glyphicon-folder-open").removeClass("glyphicon-folder-close");
    }
    e.stopPropagation();
  });
  
  //将节点链接URL内容设置为空字符串
  $(".tree a").attr("href", "");
});
Nach dem Login kopieren

Im obigen Code nehmen wir alle a-Tags des jQuery-Baums heraus und setzen ihre href-Attribute auf leere Zeichenfolgen. Auf diese Weise kann der Zweck des Ausblendens des Knoten-URL-Links erreicht werden.

2. Entfernen durch Ändern des JavaScript-Codes

In einer anderen Implementierung entfernen wir direkt den Knoten-URL-Link im JavaScript-Code. Der spezifische Implementierungscode lautet wie folgt:

$(document).ready(function(){
  $(".tree li:has(ul)").addClass("parent_li");
  $(".tree li.parent_li > span").attr("title", "Collapse this branch");
  $(".tree li.parent_li > span").children("i:first-child").addClass("glyphicon-folder-open");
  $(".tree li.parent_li > span").children("i:first-child").removeClass("glyphicon-folder-close");

  $(".tree li.parent_li > span").on("click", function (e) {
    var children = $(this).parent("li.parent_li").find(" > ul > li");
    if (children.is(":visible")) {
        children.hide("fast");
        $(this).attr("title", "Expand this branch").children("i:first-child").addClass("glyphicon-folder-close").removeClass("glyphicon-folder-open");
    } else {
        children.show("fast");
        $(this).attr("title", "Collapse this branch").children("i:first-child").addClass("glyphicon-folder-open").removeClass("glyphicon-folder-close");
    }
    e.stopPropagation();
  });

  //将节点链接URL及其父级节点的URL都设置为空字符串
  $(".tree a").each(function(){
    var node=$(this).parent("li");
    if(node.hasClass("parent_li")){
      $(this).attr("href","javascript:void(0);");
    } else{
      $(this).removeAttr("href");
    }
  });
});
Nach dem Login kopieren

Im obigen Code verwenden wir die Each-Methode des jQuery-Baums, um alle Tags zu durchlaufen und zu bestimmen, ob der übergeordnete Knoten die Klasse „parent_li“ hat. Wenn ja, legen Sie den Knoten-URL-Link fest zu einer leeren Zeichenfolge. Wenn nicht, entfernen Sie direkt das href-Attribut aus dem Tag.

3. Zusammenfassung

In diesem Artikel haben wir vorgestellt, wie man die URL-Links von Knoten im jQuery-Baum entfernt. Je nach Bedarf können Sie Knoten-URL-Links auf zwei verschiedene Arten ausblenden. Insbesondere in einigen komplexen Webanwendungen ist es häufig erforderlich, Baumdatenstrukturen anzuzeigen, und Vorgänge wie das Ausblenden von URL-Links können Entwicklern dabei helfen, die Benutzererfahrung und Benutzerinteraktivität zu verbessern.

Das obige ist der detaillierte Inhalt vonJQuery-Baum URL entfernen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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