Archiv der Kategorie: HTML

Telefonnummer nicht als Skype-Link anzeigen

Kennen sicherlich ein paar Leute, man platziert auf einer Seite eine Telefonummer und wundert sich dann über komische Bug-Reports, bei denen es um Layout-Probleme geht.
Irdendwann findet Mensch dann raus: Beim Reporter des Problems werden die Telefonnummern in Skype-Links umgewandelt und die zerschießen dann das Layout.

skypelinks1

In manchen Foren findet Mensch dann den Hinweis, doch bitte eine Meta-Tag einzubauen, allerdings funktioniert dieses nicht immer (in meinem Test machte es überhaupt keinen Unterschied, ob das Tag da war oder nicht, die Nummer wurde immer als Skype-Link dargestellt.
Der Vollständigkeit halber: Hier ist es, evtl. funktioniert es ja beim ein oder anderen:


Allerdings: Dank dieses Blogbeitrags von Michael funktioniert nun die Blockade des Umwandelns sehr gut und zuverlässig. Er bedient sich dazu eines kleinen Tricks.

Skype wandelt nur Nummer um, die es erkennen kann. In HTML gibt es ein nettes Tag, SHY. Es sorgt bei Zeilenumbrüchen dafür, dass an definierten Stellen (dort wo ­ platziert ist) eine Zeilenumbruchsanzeige (ein -) erstellt wird, so dass man bei komplizierten Wörtern einen Grammatikalisch richtigen Zeilenumbruch im Wort platieren kann. Der Browser wird – so denn der Text umgebrochen werden muss – an der Stelle des ­ den Umbruch anzeigen. Und nun: Muss der Text nicht umgebrochen werden, wird auch nichts angezeigt!

skypelinks2

Ich füge das ­ nun ganz weit vorn ein, Skype kann nun mit diesem Link nichts mehr anfangen und wir können endlich unsere Nummer so anzeigen, wie es sein sollte.

jQuery und der HTML-Head Bereich

Habe grade etwas länger zur Lösung dieses Problems verpulvert und möchte damit allen helfen, die ähnliche Probleme haben.

Ziel war es, über eine Suchfunktion mittels AJAX und jQuery ein neues Tab zu öffnen und dort die Suchinfos darzustellen und zwar ebenso, wie schon bereits vorher angezeigte “festen” Infos dargestellt wurden. Dazu gehörte auch, dass ein Klick auf eine Zeile einen jQuery-Dialog öffnet und dort mehr Informationen angezeigt werden.

Nun, die “normalen” Informationen mit dem jQuery-Dialog anzuzeigen war kein Problem, das Problem entstand, als ein neues jQuery-Tab hinzukam, dass die Ergebnisse der Suche als GET-Request darstellte (jQuery-Tab mit URL als Referenz).

Nach der Durchführung einer Suche funktionierte keine jQuery-Funktion mehr, also öffnete sich kein Info-Fenster.

Nun, ich mache es kurz: Die Lösung ist nun, dass in der Antwort des Requests nicht nur die Daten mit Layout enthalten waren, sondern eine komplette HTML-Seite und diese auch inklusive Bereich. Und dort war wiederrum ein Verweis auf jQuery enthalten; allerdings ohne die Datei, die die ganze jQuery-Logik für diese Seite beinhaltet.

jQuery lädt also neu und “kennt” dannach die Logik für die aktuelle Seite nicht mehr; ergo: Keinerlei Funktion mehr auf der Seite.

Evtl. sollte jQuery hier nachbessern und die im Speicher befindlichen Scripte nicht “vergessen”, wenn es sich selbst neu lädt. Am besten, es läßt sich gar nicht mittels eines neuen Aufrufes von neu laden, denn das störte an dieser Stelle das Vorwärtskommen doch enorm.

So, ich hoffe, ich konnte irgendeinem von euch helfen, so daß ihr nicht allzulange braucht, um eure Problem zu lösen.

Auch Profis machen Fehler *grins*

Ich wühle mich durch die Dokumentation zu den we-Tags von webEdition. Dabei fiel mir auf, dass auch gestandene Profis im Webbereich Fehler machen, die diese eigentlich nicht machen dürften.

Ein Beispiel aus der Doku zum we-Tag “we:keywords”:

Mit htmlspecialchars=“true“ werden Sonderzeichen in HTML-Entities umgewandelt (z.B. wird „&“ zu „&“). Ist htmlspecialchars nicht gesetzt, wird diese Umwandlung nicht vorgenommen.

Sicherlich ist gemeint, dass ein & zu einem & wird, aber da hat wohl der Editor dem Autor einen Streich gespielt und das & nicht richtig “escaped” und der Browser stellt das & (ganz korrekt übrigens) als & dar.

Also, liebe Profis bei webEdition, durchcrawled mal eure Doku und korrigiert dies bitte, damit auch Amateure den Mehrwert des Attributes “htmlspecialchars=true” kennenlernen dürfen.

Irgendwie bin aber doch beruhigt, dass sowas auch anderen passiert, sind also doch alles auch nur Menschen am anderen Ende der Doku *wink*