Es ist ein seit langem bestehender Webdesign-Standard, dass das Logo im Header-Bereich auf die Startseite der Website verlinkt. Ein weiterer Standard ist, dass bei der Anzeige der Navigation einer Website die "aktuelle" Seite, falls sie in der Navigation vorhanden ist, auf irgendeine Weise hervorgehoben wird. Ich denke, das sind großartige Standards. Die Sache mit dem Logo-Link ist so allgegenwärtig, dass Ihre Benutzer sie wahrscheinlich automatisch ausprobieren werden, ob Sie sie nun so codiert haben oder nicht. Die Sache mit der aktuellen Navigation ist einfach gesunder Menschenverstand, um Benutzer zu erden und ihnen ein gutes Gefühl über ihren aktuellen Standort in der Hierarchie einer Website zu geben.
Aber hier ist ein weiterer guter Designstandard: Verlinken Sie nicht auf dieselbe Seite, auf der Sie sich gerade befinden.
Die Idee dahinter ist zweigeteilt
- Wenn Sie einen Link sehen, sieht er wie ein Link aus, verhält sich wie ein Link und sagt: "Klicken Sie hier, und Sie werden woandershin gebracht." Wenn der Link Sie zurück auf dieselbe Seite bringt, auf der Sie sich gerade befinden, ist das irgendwie seltsam.
- Es ist eine Verschwendung von Serverressourcen, eine Seite ohne Grund neu zu laden.
Wie können Sie das ohne viel Entwicklungsaufwand und Änderung des Markups erreichen? CSS natürlich!
Die Hauptidee ist, dass Sie einem Link mithilfe der CSS-Eigenschaft pointer-events sagen können, dass er sich nicht wie ein Link verhält (beim Klicken nichts tut).
Body hat eine eindeutige ID auf der Startseite
<body id="home">
Navigation hat einen passenden Klassennamen
<nav>
<ul>
<li class="home"><a href="#">Home</a></li>
<li class="about"><a href="#">About</a></li>
<li class="clients"><a href="#">Clients</a></li>
<li class="contact"><a href="#">Contact Us</a></li>
</ul>
</nav>
Navigation für das Home-Verzeichnis wird nur auf der Startseite deaktiviert
#home nav .home > a {
pointer-events: none;
cursor: default;
}
Wow, das war einfach, oder? Das funktioniert in Firefox 3.6+, Safari 3+ und den neuesten Chrome-Versionen (v5+?). Noch nichts von Opera oder IE. Aber hey, das ist ziemlich gut für eine so geringe Entwicklungsinvestition.
Ein Teil des Tricks, um dies zum Laufen zu bringen, ist, eine ID oder eine Klasse auf dem Body zu haben, mit der Sie arbeiten können. Wenn das für Sie eine neue Idee ist, schauen Sie sich diesen Artikel und diesen Screencast für die Grundidee an. Wissen Sie auch, dass ein CMS wie WordPress einebody_class();Funktion hat, die hervorragende Arbeit leistet, indem sie alle Klassennamen liefert, die Sie sich jemals auf dem Body wünschen könnten.
Danke an Ant Gray für die Idee!

Hmmm... Interessante Lösung.
Mit freundlichen Grüßen!
.home a:active {
pointer-events: none;
cursor: default;
}
„:active“ bedeutet nicht immer die aktuelle Seite
Das erscheint mir extrem gefährlich. Ein Link ist im Sinne von „:active“ aktiv, wenn er angeklickt wird. Wenn Sie die Pointer-Events zu diesem Zeitpunkt deaktivieren, könnten Sie effektiv alle Links auf der gesamten Startseite deaktivieren.
Wenn ich weitere 10 Menüpunkte hinzufügen möchte, muss ich das CSS bearbeiten – das ist schlechte Praxis.
Es ist besser, die Klasse .active für den aktuellen Menüpunkt hinzuzufügen
Das ist ein guter Punkt, es erfordert etwas Pflege, ich glaube aber nicht, dass es deswegen schlechte Praxis ist. Und ich möchte allen Lesern klarstellen, dass eine KLASSE .active etwas ganz anderes ist als eine PSEUDOKLASSE :active
Genau deshalb verwende ich persönlich „selected“ statt „active“ für einen Klassennamen der aktuellen Seite. Nur um diese Unterscheidung klar zu halten.
Ich stimme banzalik zu, da CSS dazu dient, einen Stil zu definieren, der unabhängig vom Inhalt ist.
Stellen Sie sich vor, Sie haben eine persönliche Homepage mit 5 Links in der Navigation. Jetzt möchten Sie eine neue Seite über Ihren Hund oder Ihren Computer hinzufügen. Warum sollten Sie das CSS ändern, um dies zu tun?
Der gesamte Stil Ihrer Seite ist bereits definiert. Alles, was Sie tun möchten, ist, Inhalte hinzuzufügen.
Ich sehe immer noch keinen Sinn darin, eine ID im Body-Tag zu verwenden.
Dieses Beispiel, das Sie bereitgestellt haben, bedeutet, dass Sie diese ID serverseitig hinzufügen. Aber. Sie können einfach etwas wie
<li class="about nolink"><a href="#">About</a></li>in Ihrem serverseitigen Skript machen. Das scheint netter zu sein. Meiner Meinung nach.
Das ist auch in Ordnung ... aber das ID-ieren des Body hat unzählige andere Verwendungszwecke, während dies weit spezifischer ist, (meiner Meinung nach) weniger semantisch und einige Programmiererinterventionen erfordert, um es zu erreichen.
zum Ändern der ID im Body benötigt man einen Programmierer :) oder nicht?
Das mag sein. Wahrscheinlich nicht, wenn #1) Sie es bereits tun. #2) Sie ein CMS wie WordPress verwenden, das eine einfache Funktion dafür hat. #3) Sie sind komfortabel genug, um so etwas hinzuzufügen
<body id="<?= basename($_SERVER['PHP_SELF'], ".php")?>">Dies scheint der beste Weg zu sein.
Ah ja, Pferdelogik. Nichts wie gute alte Webdesign-Praxis und moderne Cursor-Events.
Nette Idee, von dieser Eigenschaft wusste ich nichts, aber meiner Meinung nach erfüllt diese Lösung nicht den von Ihnen erwähnten Standard: „keine Links auf die Seite, auf der Sie sich befinden, auf dieser Seite haben“
Wenn etwas ein Link ist, wird es durch das Markup definiert und nicht durch CSS. In Ihrem Markup ist der „Home“-Link immer noch ein Link, da das Wort „Home“ immer noch die Metainformationen hat, die es mit einer URI verknüpfen.
Der erwähnte Standard ist wichtig aus der Sicht der Barrierefreiheit, wenn zum Beispiel in einem Screenreader der Stil des aktuell aktiven Links nicht angezeigt werden kann. Wenn Sie also durch alle Links auf einer Seite schleifen, erhalten Sie nicht die Wahl, den aktuell besuchten Link erneut anzuklicken.
Wenn Sie den erwähnten Designstandard wirklich erfüllen wollen, sollten Sie Ihr Markup ändern. Ein gut gestaltetes CMS sollte das für Sie erledigen.
Auf jeden Fall ein guter Punkt. Wenn Sie die Möglichkeit haben, das generierte Markup zu ändern, ist das möglicherweise ein guter Weg.
Aber ein weiterer Grund, dies zu verwenden, und tatsächlich ist das wahrscheinlich der Grund, warum es zu den CSS-Funktionen hinzugefügt wurde, ist, dass das Entfernen des Links um ein Navigationselement möglicherweise das einzige Tag entfernt, mit dem es angesprochen werden kann. Wenn Sie eine Standard-„ungeordnete Liste“-Navigation verwenden, können Sie möglicherweise das <li>-Element verwenden, um es auf die gleiche Weise zu gestalten, aber das ist nicht garantiert. Wenn Sie überhaupt kein Listenelement verwenden, ist das Anker-Tag vielleicht alles, was Sie haben, und das Entfernen könnte das Layout des Menüs beschädigen.
Zwei Möglichkeiten
– Verwenden Sie ein Span-Tag anstelle eines Ankers für den aktiven „Link“ (das mache ich, wenn mir dieser Standard wichtig ist). Wie Sie selbst ein paar Kommentare weiter unten erwähnt haben.
– Verwenden Sie ein Anker-Tag ohne das href-Attribut. Ich bin mir nicht sicher, ob das der richtige Weg ist und ob alle Browser das Wort nicht verlinken, wenn Sie das tun, aber es kam mir gerade in den Sinn.
Dann müssten Sie den CSS-Selektor auf a:link ändern, der einfache „a“-Selektor wäre für den aktuell aktiven Link.
Das Entfernen des href-Attributs sollte das Styling nicht beeinträchtigen, und Sie können <a>-Tags mit dem href-Attribut immer ansprechen, indem Sie :link zu Ihrem CSS hinzufügen.
Ich verwende das <a>-Tag ohne href-Attribut tatsächlich oft, besonders wenn ich JavaScript verwende, aber das heißt nicht, dass ich keine Fallbacks habe.
Ich habe ein Beispiel gemacht und ich denke, es ist sehr gut
http://static.laszlokorte.de/html/active_link.html
Sie möchten wahrscheinlich auch das Standard-Styling für :active überschreiben ... da das Klicken auf Ihren aktiven Link immer noch zum Standard-Stil für aktive Links (Unterstrichen und Blau) führt
Ich finde es clever, dass man das mit CSS machen kann, aber es fühlt sich nicht so an, als ob es im Aufgabenbereich von CSS liegt, Links auf diese Weise zu deaktivieren – das ist ein Verhalten, das in CSS gemacht wird (was genauso schlimm ist wie Aussehen/Layout, das in JavaScript gemacht wird).
Ich könnte nicht mehr zustimmen..
Auch seltsam, dass es eine „event“-Eigenschaft für Stylesheets gibt, wenn Ereignisse typischerweise das definieren, was Skriptsprachen ausmacht.
Ist das etwas, das wir in zukünftigen CSS-Versionen häufiger sehen werden oder ist das eine Ausnahme?
Selbst von jemandem wie mir, der kein JavaScript schreiben kann und immer noch mit jQuery kämpft, müsste ich zustimmen. Es ist nicht die Aufgabe von CSS, Verhalten zu handhaben. Ich bin für CSS, das Animationen handhabt, weil das nur die Art und Weise ist, wie etwas angezeigt wird, aber für alles wie dieses sollte es in der Domäne von JavaScript bleiben.
Ich denke, es ist auf jeden Fall eine interessante Sache zur Diskussion. Ich denke, pointer-events ist der bisher größte Eingriff in dieses Territorium. Einige mögen argumentieren, dass sogar :hover zu verhaltensorientiert ist (ich würde widersprechen). Viele Leute sagen, dass Übergänge/Animationen Verhalten sind (ich würde widersprechen). Aber dies ist fast unbestreitbar verhaltensorientiert.
Ich bin immer vorsichtig, wenn es darum geht, IDs zu Body-Tags hinzuzufügen. Sie bieten viele Möglichkeiten, aber allzu oft, besonders in Teams, verwenden die Leute zu spezifische Regeln, die auf dem Body-Tag basieren. Trotz der Festlegung ordnungsgemäßer Codierungsmuster zu Beginn des Projekts sehe ich ständig
<pre><code>body#someid #main #content p {some rules}</code></pre>
wenn alles, was nötig war, war
<pre><code>#content p {some rules}</code></pre>
Wenn Sie dasselbe Stylesheet für mehrere Seiten verwenden (was ziemlich üblich ist), ist #content p nicht immer innerhalb von #main und #main ist nicht immer innerhalb von body#someid, was bedeutet, dass Sie es nur auf den Seiten ansprechen können, auf denen es vorhanden ist. Das ist der Sinn der Vergabe einer ID oder Klasse an das Body-Tag.
oder wenn eine bestimmte Seite (z. B. die Startseite) ein merklich anderes Styling hat, insbesondere wenn es auf Elemente/IDs angewendet wird, die auch auf anderen Seiten vorhanden sind.
Ist pointer-events für alle wichtigen Browser verfügbar?
Bill: Lies den Artikel noch einmal. Chris gibt klar an, welche Browser unterstützt werden.
Coole Idee. Ich habe gerade neulich über dieses Thema nachgedacht. Ich denke, das funktioniert in den meisten Fällen, aber in einigen Situationen, in denen Sie Unterseiten, aber keine Unternavigation haben, funktioniert es möglicherweise nicht. Sie möchten dem Benutzer die Möglichkeit geben, zu dem Zustand zurückzukehren, in dem die Seite/der Abschnitt beim ersten Besuch war (außer durch Drücken der Browser-Aktualisierungstaste). Oder wenn Sie dynamische Inhalte haben (Slider usw.), möchten Sie den Inhalt neu laden können. Zum Beispiel die Hauptseite Ihrer Snippets. Ich benutze Links wie diese, um die Seite neu zu laden, genauso wie ich ein Logo verwende, um mich zurück zur Startseite zu bringen, oder viele Google-Dienste (klicken Sie auf das Gmail-Logo, um manuell nach neuer E-Mail zu suchen). Wenn dynamische Inhalte durch eine Seitenaktualisierung angezeigt werden, dann möchten Sie den Button als Link beibehalten (wie die Twitter-Seitenleistenlinks für Erwähnungen usw.).
@Chris – Guter Standard, Sie sollten ihn auch umsetzen.
Das könnte ich tatsächlich. Wie bei allem muss viel nachgedacht werden. Zum Beispiel auf dieser Website könnten Sie den Freebies-Bereich betrachten, aber speziell die CSS-bezogenen Freebies. Die Navigation wird anzeigen, dass Snippets aktuell ist, aber wenn Sie darauf klicken, gelangen Sie zurück zu den JavaScript-Sachen. Es ist also eine schwierige Entscheidung, aber da es Sie zu einem tatsächlichen anderen Ort bringt, sollte es wahrscheinlich nicht deaktiviert werden.
In einem verwandten Thema fand ich Ihre Homepage immer etwas verwirrend, da der „Artikel“-Tab markiert ist, die Homepage aber viele andere Dinge wie Screencasts und Snippets enthält. Wenn ich also auf Artikel klicke, erwarte ich, auf eine Seite zu gelangen, die nur Artikel enthält, nicht die Homepage. Eine einfache Lösung wäre nur, den Button „Artikel“ in „Home“ zu ändern. Nur meine zwei Cent.
Auch die Überschrift des Artikels führt Sie zur selben Seite..
Das erinnert mich an den Screencast, den Sie vor einiger Zeit über die Hervorhebung der Navigation für WordPress gemacht haben, aber weniger kompliziert :)
Sie haben es hier tatsächlich selbst gemacht, Chris, Sie haben den Titel des Blogbeitrags auf dieser Seite zu derselben Seite verlinkt (hier)!
Das passt zu meinem Kommentar oben. Es ist sinnvoll, das bei Blogbeiträgen zu tun, weil Sie die Seite möglicherweise neu laden möchten, um neue, aktualisierte Kommentare zu sehen. Oder manchmal klicke ich mit der rechten Maustaste auf den Seitentitel, um den Link für andere Beiträge zu erhalten.
Was passiert, wenn „Über uns“ Unterpunkte hat, wie „unsere Geschichte“, „Mission“, „Vorstand“, „in der Gemeinschaft“ usw.? Würden Sie dann nicht den Link zu „Über uns“ von diesen Unterseiten aus deaktivieren?
Wenn Sie den > Selektor verwenden, gibt es keine Probleme.
Probieren Sie dies
Ups.
(Chris, bitte fügen Sie eine Kommentarvorschau hinzu).
Danke für den Tipp, Chris. Wirklich nett!
Obwohl ich den meisten Kommentaren hier zustimme, dass dies eine gute Idee ist, aber nicht 10% praktisch im Produktionscode.
Es gibt viele andere leistungsstarke Werkzeuge, zu denen Entwickler greifen würden. In Rails zum Beispiel können Sie link_to_unless_current verwenden.
Aber wenn Sie nicht in Rails sind und/oder keinen Produktionscode ausführen, ist dies ein FANTASTISCHES Mittel für „Prototypen, die nicht gemacht werden können – gefälscht“.
Oh Rails, du bist so schlau. Was wird dann eingewickelt, wenn der Link DER AKTUELL IST? Nichts, oder verwendet es oder etwas Ähnliches? Was mich daran beunruhigt, Links für aktuelle Seiten zu entfernen, anstatt dieses CSS zu verwenden, ist, dass es den einzigen Tag entfernen könnte, den Sie haben, um den Text anzusprechen.
Sie haben es genau richtig erfasst. Die Ruby-Lösung, die ich angeboten habe, entfernt das <a>-Tag, sodass Sie dies bei der Entwicklung der Benutzeroberfläche berücksichtigen müssen.
Ich habe das nur als einzelnes Beispiel verwendet. Es gibt alle möglichen Wege, um dies zu erreichen, indem man JS verwendet (wie Sie sicher wissen), um diese Situation zu verwalten.
Aber ich denke immer noch, dass dies eine großartige Prototyping-Lösung ist, um einen Anwendungsfall zu fälschen.
Nur zu Ihrem Interesse: In Rails können Sie sogar einen zusätzlichen Parameter angeben, um anzugeben, was zu tun ist, wenn der generierte Link der aktive ist.
Während es viele Wege gibt, um dasselbe Ergebnis zu erzielen, denke ich, dass JS dies am besten handhaben kann – schreiben Sie einfach eine Funktion, die den href in einem Link mit der aktuellen URL vergleicht; und wenn er gleich ist, entfernen Sie ihn (nicht die <a>, sondern den href), oder fügen Sie einfach onclick="return false;" oder etwas Ähnliches hinzu. Das ist dynamischer; Sie müssen das CSS nicht für jede Seite hart codieren.
$#|+
Chris, ich habe in meinem vorherigen Beitrag ss statt dd getippt. Das möchten Sie vielleicht korrigieren. Entschuldigung!
Wir sollten unsere eigenen Kommentare bearbeiten (oder zumindest löschen) können.
Es ist ziemlich ironisch, dass der Titel dieser Seite auf dieselbe Seite verlinkt. Korrektur: Entfernen Sie den Anker-Link in single.php, wenn Sie WordPress verwenden.
Das sollte ich wahrscheinlich tun. Das tue ich normalerweise, aber ich denke, irgendwann habe ich aus irgendeinem Grund beschlossen, dass ich dort einen Link haben wollte. Ich glaube, aus irgendeinem Grund habe ich mir die persönliche Angewohnheit angeeignet, mit der rechten Maustaste auf Blog-Post-Titel zu klicken und deren URLs zu kopieren, wenn ich etwas wie tweete. Und wenn das weg wäre, würde es mich stören. Aber ich sollte es wahrscheinlich überwinden und es entfernen, da es eindeutig nicht benötigt wird.
Komm schon Chris, du kannst die Adressleiste dafür benutzen :)
Es ist eindeutig notwendig, wenn Sie es benutzen.
Danke Chris! Dieser Trick ist einfach, aber sehr nützlich! Ich werde ihn in meinem nächsten Website-Projekt verwenden.
Wow, das ist ziemlich cool. Ich habe von komplizierteren Wegen gehört, dies zu tun, aber das ist bei weitem einfacher.
Ich werde das bei meinem nächsten Projekt ausprobieren! :)
Schöner Beitrag, Chris, pointer-events ist ziemlich interessant!
Meiner Erfahrung nach möchten Sie nicht immer, dass dieser Link inaktiv ist.
Auf einer Mode-Einzelhandelsseite, an der ich arbeite, sind die Links „Frauen Männer Kinder“ in der Hauptnavigation Links zu Abschnitten der Website, im Gegensatz zu einzelnen Seiten. Zum Beispiel führt ein Klick auf Frauen zur Landingpage des Frauen-Unterabschnitts und hebt Frauen in der Hauptnavigation hervor.
Von dieser Seite aus können Sie zu einzelnen Produktseiten navigieren, aber „Frauen“ bleibt in der Hauptnavigation hervorgehoben, um anzuzeigen, in welchem Unterabschnitt Sie sich befinden, obwohl es kein Link zu dieser einzelnen Produktseite ist.
In diesem Fall möchten Sie, dass dieser Link hervorgehoben wird, um anzuzeigen, in welchem Unterabschnitt Sie sich befinden, aber Sie möchten auch, dass er klickbar ist, damit Benutzer zur Hauptseite der Frauen zurückkehren können.
Ich habe meine Meinung zu dieser Webdesign-Maxime in letzter Zeit geändert. Für reguläre Homepages, sicher, aber auf Websites wie Reddit und Hacker News klicke ich oft auf den Link, der die aktuelle Seite neu lädt, falls neue Stories dazugekommen sind. Auf dem iPad ist das besonders praktisch, da der Reload-Button so winzig ist und man keine einfache Cmd+R-Alternative hat :-)
Daher behalte ich Links zur aktuellen Seite auf all meinen Websites bei. Es schadet niemandem, meine Besucher sind schlau genug, um zu verstehen, was ein Seiten-Reload ist, und da die meisten Kunden bedingte GETs schätzen, verbraucht es kaum Ressourcen. Pragmatisch vs. dogmatisch.
Diese Version wird schneller laufen und von allen Browsern unterstützt, auch von Opera und IE.
Dieser CSS-Selektor stimmt dann auf allen Seiten und deaktiviert den Home-Link auf allen Seiten, nicht nur auf der Startseite, das ist der Sinn der Body-ID, um ihn auf die aktuelle Seite zu beschränken.
Und die pointer-events-Eigenschaft ist es, die in Opera und IE nicht funktioniert, nicht der Selektor selbst.
Ich versuche nur, die Nachricht für jeden, der das liest, klar zu halten.
Ich habe bereits einen Link oben gepostet, aber für den Fall, dass Sie ihn nicht bemerkt haben
thx, natürlich habe ich
#home a.home {pointer-events: none;
cursor: default;
}
Ich habe gerade festgestellt, dass der Code, wie ich ihn gepostet habe, in Firefox nicht funktioniert. Die einfache Lösung dafür ist, den a:link-Selektor mit „, a:visited“ zu erweitern, da ein besuchte Link in FF a:link nicht mehr abgleicht
Nett. Überlassen wir CSS, um die Lücke zu füllen. CSS könnte einfach für Creative Stuff Solutions stehen, nur vielleicht…
Erstaunlich! Ich habe vergessen, das zu tun. Das ist einfach brillant.
Wow? Ich wusste nicht, dass du das kannst. Danke fürs Teilen.
Chris, ich verstehe den Drang, aber das ist eine wirklich schlechte Idee. Aus mehreren Gründen, zusammengefasst als
1) Nur weil Ihnen kein Grund einfällt, warum Leute auf einen Link klicken möchten, der zur selben Seite führt, bedeutet das nicht, dass es keinen gibt.
2) Ein Link sagt nicht „geh woanders hin“ – ein Link sagt und sagt seit Beginn des Internets: gehe dorthin, wohin dieser zeigt, was weiter unten auf der Seite, in einem Modal-Fenster oder etwas anderem sein kann.
Zu 1) Vielleicht möchte der Benutzer die Seite neu laden, ohne auf „Aktualisieren“ zu klicken. Insbesondere bei Artikel-/Blogpost-Titeln usw. möchte er vielleicht sicherstellen, dass er sich unter der kanonischen/vollständigen Adresse befindet. Warum sollte man diesen Benutzer frustrieren? Wie im echten Leben kann das, was dem Designer wie eine triviale Anstrengung erscheint, für die Benutzer ärgerlich und sogar entmutigend sein.
Zu 2) Dies könnte sich tatsächlich rächen, wenn es um SEO geht. Ich glaube, Google berücksichtigt bereits einige JavaScript-Verhaltensweisen, und es gibt keinen Grund anzunehmen, dass sie das nicht in Zukunft tun werden. Web-Crawler zählen, wie Web-Benutzer, auf Links, die einfach ihren Zweck erfüllen. Wenn das bedeutet, auf dieselbe Seite zu verlinken, dann sei es so.
Darüber hinaus führt dies zu einem sogenannten modalen Fehler im Kern Ihrer Interface-Navigation. Modale Fehler treten auf, wenn dasselbe Ding in zwei verschiedenen Kontexten auf zwei verschiedene Arten wirkt, ein großer Usability-No-No.
Wenn ich als normaler Webnutzer auf diesen Link auf Ihrer Seite klicke und er nichts tut, bin ich zumindest einen Moment lang verwirrt und fange an, über die Technologie nachzudenken, anstatt über den Inhalt. Immer ein schlechtes Zeichen. (Mehr Sorge bereiten die Leute, die versuchen, ein Bild der Kompetenz zu vermitteln, es könnte mich fragen lassen, ob die Seite irgendwie „kaputt“ ist. Das mag einige Usability-Bedenken aufwerfen, ist aber hauptsächlich ein Verlust für die Website und nicht für den Benutzer.)
Nachdem ich alle Kommentare gelesen habe, muss ich dem vorherigen Kommentar von DN zustimmen, dies ist ein irreguläres Verhalten und ändert die Art und Weise, wie die Leute derzeit mit Navigationselementen interagieren, ob aus „Design“-Sicht perfekt sinnvoll, aus UIX-Verhaltenssicht kann dies verwirrend sein und das Ziel der Seite komplizieren, nämlich den Inhalt und nicht das Austauschen von Funktionalität durch Änderung, wie ein typischer Betrachter es gewohnt ist, mit einer Webseite zu interagieren.
Wow, sehr cooler Trick! Ich habe dies verwendet, um eine Lightbox-Zoomaktion für Bilder auf kleinen mobilen Bildschirmen zu deaktivieren. Ich dachte, ich müsste einen Weg finden, das Skript zu deaktivieren. Das ist eine so einfache Lösung.