2016-07-20 12 views
0

Ich bin nicht einmal in der Lage, nach dieser Antwort zu suchen, weil die Terminologie mir fremd ist. Ich wäre glücklich mit nur einem Ausgangspunkt für das, was ich erforschen muss. Ich bin nicht einmal sicher, was die Definition ist, würde es verschlüsselte URL genannt werden?In Bezug auf mein Javascript für die automatische Anzeige von Bild-URL - wie Bild URL ohne w/o IMG-Erweiterungen anzeigen?

https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcTvMvl7LRHxafRFWLUS39Ku5FaSGEEbTuwiwkTZtxfEghLjScT1HsorllX2

Diese Verbindung ist nichts anderes als ein Bild.

Aus dem Blick auf diese URL, finden Sie keine Erwähnung von jpg oder PNG, keine Erweiterung neben Zahlen.

Können diese Links über ein Skript angezeigt werden?

Ich führe derzeit ein PHPBBB-basiertes Forum. Viele unserer Mitglieder sind Männer mittleren Alters, die kaum wissen, wie man eine App herunterlädt, geschweige denn BBCode-Buttons zum Einbetten von Medien verwendet. Daher habe ich die Aufgabe von automatisierten Skripten übernommen, um ihnen das Leben leichter zu machen muss es nicht jedes Mal erklären.

Es mag für die meisten von euch nicht wie eine große Sache erscheinen, aber für mich war es eine monumentale Aufgabe, da ich sehr wenig Anleitung dazu hatte, und der Eureka-Moment, als ich es herausgefunden hatte, war genug um wirklich hoch zu gehen mein Interesse zu lernen, was sonst noch mit Javascript getan werden kann.

Meine Erfahrung ist auf grundlegende HTML und CSS beschränkt, aber ich bekomme langsam meine Füße nass. Wie auch immer, hier ist, was ich für die Einbettung von Medien durch oembed habe, und dann mein eigenes Skript für Links, die durch phpbb als img-Links identifiziert werden (vorausgesetzt, sie analysieren diese über Erweiterungen, und mein Code huckt das aus).

Also abgesehen davon, was ich bereits habe, gibt es eine Möglichkeit, eine Funktion für .postlink hinzuzufügen, um eine Bild-URL zu identifizieren?

Ich habe diesen Code online gefunden (kann nicht Kredit dafür nehmen, ich könnte möglicherweise etwas dieses Komplizierte noch nicht erdenken). Es scheint, dass dieser Code für Bilder funktioniert, die nicht mit einer IMG-Erweiterung enden. Was wäre der beste Weg, den Datensatz (URL, Ergebnis) in meinen Code zu implementieren, der den img src anzeigt?

function testImage(url, callback, timeout) { 
    timeout = timeout || 5000; 
    var timedOut = false, timer; 
    var img = new Image(); 
    img.onerror = img.onabort = function() { 
     if (!timedOut) { 
      clearTimeout(timer); 
      callback(url, "error"); 
     } 
    }; 
    img.onload = function() { 
     if (!timedOut) { 
      clearTimeout(timer); 
      callback(url, "success"); 
     } 
    }; 
    img.src = url; 
    timer = setTimeout(function() { 
     timedOut = true; 
     callback(url, "timeout"); 
    }, timeout); 
} 


function record(url, result) { 
    document.body.innerHTML += "<span class='" + result + "'>" + 
     result + ": " + url + "</span><br>"; 
} 

Danke, Nick

Antwort

0

Der Browser kümmert sich nicht wirklich, wie die URL für das Bild zusammengesetzt ist. Es ist jedoch wichtig, dass Ihre Antwort den richtigen Header "Content-Type" hat, in diesem Fall "image/png". Nicht sicher, wie Sie das in PHP machen, aber ich kann mir vorstellen, dass es nicht so schwer ist. Sie müssen auch die "Content-Length" mit der Byte-Größe des Bildes festlegen.

+0

Ich versuche, das Bild von der URL automatisch zu ziehen, so ist es nicht der Browser, ich brauche mein Skript in der Lage zu identifizieren, wenn die URL eine Bildverknüpfung ist und das eingebettete Bild SRC wie bei jedem anzuzeigen Link, der in jpg/png/gif etc endet – corleoner

+0

Wenn ich das richtig verstehe, können Sie die Antwort-Header von Javascript zugreifen, schauen Sie auf http://help.dottoro.com/ljxsrgqe.php –

+0

OK, ich habe eine gefunden Code, der tun kann, was ich suche, kann jemand den besten Weg identifizieren, um die aufgezeichneten Ergebnisse zu verwenden, um das Bild src anzuzeigen (wie ich es in meinem Skript habe, so dass es nach der Veröffentlichung durch einen Benutzer angezeigt wird)? – corleoner