suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Ich versuche, mithilfe von Javascript den Base64-Wert von Elementen und Bildern auf einer vorhandenen Seite abzurufen

Entschuldigung, ich dachte, Sie hätten Verständnis, da für dieses Javascript kein neuer Thread gestartet werden kann. Angesichts dieser neuen

Wow, das letzte, was ich ausprobiert habe, war

var main_artwork = this.document.getElementById("np_track_artwork");
var title_album = this.document.getElementById("artwork_tit");
var base64art1 = title_album.src ; // Already base64
var base64art2 = getBase64StringFromDataURL(main_artwork.src);

Dadurch wird nicht nur Base 64 auf dem Image von SQL zurückgegeben, liegt das daran, dass es sich auf dem Apache-Server befindet?

FehlerPausiert bei Ausnahme: undefiniert oder null

Ich hatte Probleme beim Versuch, die „Konsole“ im Editor zu verwenden. Vielleicht hat sich das geändert. Bitte aktualisieren Sie Ihre Seite und entfernen Sie, was nicht funktioniert. Das ist so frustrierend

function fetchbase64(transport2) {
    const image = document.getElementByid(transport2);
    fetch(image.src)
       .then((res) => res.blob())
       .then((blob) => {
           const reader= new FileReader();
           reader.onloadended = () => {
                console.log(reader.result);
                const base64 = getBase64StringFromDataURL(reader.result);
               //console.log(base64);
           };
            reader.readAsDataUrl(Blob);
            return base64;
         });
}

Fehler:

ReferenceError: Blob ist nicht definiert. Und pausieren Sie bei Ausnahmen. warum also Bedeutet das, dass kein Blob gebildet werden kann?

Ich versuche es auch unten, ich denke, die Verwendung von Onload wird es ersetzen Der Inhalt des Bildes ist Base64, aber das funktioniert nicht und ich weiß nicht warum. ICH Beachten Sie außerdem, dass dies der Image-Blob sein sollte, in dem der Debugger deklariert wurde Das Argument ist 1, aber das ist es nicht.

Bevor das jemand sagt: Das ist nicht hilfreich, gibt den gleichen Fehler aus Keine Antwort Das scheint die Norm zu sein: Wie löse ich den „nicht erfassten Referenzfehler: Blob ist nicht definiert“?

In diesem Fall wird elm als img#np_track_artwork {alt:'Playing Tracking-Artwork“, src: „http://blah.com/now-playing.png, srcset:“ Abmessungen: '', crossOrigin:null ...} sieht für mich wie ein Klecks aus? Also habe ich umgeschrieben Für mich sieht es gut aus :

function encodeBase64(elm) {
   var file = new blob([JSON.stringify(elm,null,elm.length)],{type:'image/gif'});
   var imgReader = new FileReader();
   imgReader.onloadend = function(){
       console.log('Base64 Format', ImgReader.result);
   }
   imgReader.readAsDataURL(file);
   var main = this.document.getElementById("np_track_artwork");
   main.currentSrc =  "data:image/gif;base64,"+imgReader.readAsDataURL(file);
}
<img onchange="encodeBase64(this);" src="blahmasoganistic.png">


//** so i tried this which also failed to do much at all from some ones
//   site why does this stuff never work dont people believe in taking
//  it down.**
function encodeBase64(elm) {
   var file = elm.files[0];
   var imgReader = new FileReader();
   imgReader.onloadend = function(){
       console.log('Base64 Format', ImgReader.result);
   }
   imgReader.readAsDataURL(file);
   var main = this.document.getElementById("np_track_artwork");
   main.currentSrc =  "data:image/gif;base64,"+imgReader.readAsDataURL(file);
}

Ich neige auch dazu, einen neuen Blob zu erstellen, wenn sich Blobs im Array befinden var file = new blob ,elm.toString(),{'image/gif'}); 但这给出了相同的结果参数 1 而不是 imgReader.readADatUrl(file);

Ich habe diese frustrierende Nachricht erhalten

Sie können jetzt keine neuen Fragen posten. Leider nicht mehr Akzeptieren Sie Fragen von Ihrem Konto, wie die meisten Ihrer Fragen Verbesserungsbedarf besteht oder den Rahmen dieser Website sprengt. Hilfe anzeigen Zentrale Seite Warum wird meine Frage nicht mehr akzeptiert? Konto? um weitere Informationen zu erhalten.

Bitte erstellen Sie keine neuen Konten. Arbeiten Sie stattdessen an der Verbesserung Ihrer Bearbeiten Sie vorhandene Fragen, um sie an die Anforderungen der Website anzupassen Richtlinien und gehen Sie auf das Feedback ein, das Sie erhalten. du kannst auch Tragen Sie weiterhin auf andere Weise zur Website bei, beispielsweise durch Bearbeiten Andere Beiträge, um sie zu verbessern.

Als ich versuchte, andere Fragen zu stellen, die nichts mit der Frage zu tun hatten, die ich beantwortet hatte, wurde mir versprochen, der Sache nachzugehen. Nichts ist passiert. Ich schätze, was bedeutet es, ein männlicher Dominant zu sein? Du willst hier keine Frauen haben?

Ich verwende JavaScript, um ein GIF auf einem Hintergrund zu platzieren, und obwohl dadurch der Text darunter erstellt wird, wird die Seite nicht aktualisiert. Ich bin mir nicht sicher, warum jemand helfen kann?

Der HTML-Teil der Tabelle ist

Wenn ich im Debugger eine Variable in die Konsole eingebe, wird in object_dj Folgendes zurückgegeben:

Ich habe es auch versucht, das diesen Inhalt auch als Hintergrundbild zurückgibt: „“

object_dj = document.getElementById("DJ");
object_dj.style.backgroundImage = url("images/bandicam-2023-03-31-14-59-01-846.gif");

Ich habe sogar versucht, die richtige URL zu verwenden object_dj.style.backgroundImage = 'http://d.ezyro.com/images/bandicam-2023-03-31-14-59-01-846.gif';object_dj.style.backgroundImage = 'http://d.ezyro.com/images/bandicam-2023-03-31-14-59-01-846.gif';

object_dj.style.backgroundImage ist immer noch „Was ist los? Ich kann es mit einem Stylesheet festlegen.“

.DJvid {  
   background-image:url("images/background3.png");
   height:250px;
   background-repeat: no-repeat; 
   background-size: 250px,350px;
   background-position: bottom;
   width:400px;
   
 
}

Ich habe mein Bestes versucht. pUrl ruft die URL ab, weist sie jedoch nie object_dj.style.backgroundImage zu und weist sie url() zu. Gibt „“ zurück. pUrl enthält die URL „http://d.ezyro.com/images/ezgif-2-f0284e7093b1.gif“ (keine echte URL). url() scheint nicht zu funktionieren, vielleicht weil es nicht https, sondern http ist? :

pImageUrl = "images/bandicam-2023-03-31-14-59-01-846.gif";
pUrl =  baseURL + pImageUrl;
object_dj.style.backgroundImage = pUrl;

Ich habe es noch einmal versucht, bevor es gelöscht wurde

$('DJ').css("backgroundImage","url(pUrl)");

$('DJ').css("backgroundImage","url(pUrl)");

Der div-Hintergrund in der Debugger-Konsole gibt immer noch nichts aus und auf dem Bildschirm ändert sich nichts

Konsole: object_dj.style.backgroundImage ''

Das von mir verwendete JavaScript ist

object_dj = document.getElementById("DJ");
baseURL = "http://d.ezyro.com/";
object_dj.setAttribute('style', 'background-image: url('+baseURL+'images/ezgif-2-f0284e7093b1.gif)');

P.S. Website d existiert nicht.

Da dieser Schritt nun funktioniert, muss ein Neuanstrich vorhanden sein oder etwas fehlt. Vielleicht können Sie mich dabei unterstützen, dass dies funktioniert, indem Sie die Seite aktualisieren.

Ich habe versucht, die Daten mit etwas Müll zu ändern:

object_dj.style.opacity=0.99;
setTimeout(()=> {object_dj.style.opacity=''},0);

Auch ausprobiertes und verifiziertes Bild:

var imageUrl = "images/bandicam 2023-03-31 14-59-01-846.gif";
const pUrl = new URL(baseURL, imageUrl);
object_dj.style.backgroundImage = `url("${pUrl}")`;

Fehler

VM313:1 Nicht erfasster Referenzfehler: imageURL ist nicht definiert in Auswertung(Auswertung in (music_now_playing.php:1:1),:1:1) Bei: 1:1

Ich habe versucht, Variablen hinzuzufügen Es wurde beschlossen, keinen Fehler zu machen.

Dies ist von der Konsole, Ihr Beispiel lädt die URL auf meiner Website nicht:

bpm
<div class=​"hidden" id=​"#bpm">​196​</div>​
imageUrl
'images/bandicam 2023-03-31 14-59-01-846.gif'
object_dj.style.backgroundImage
pUrl
VM110:1 Uncaught ReferenceError: pUrl is not defined
    at eval (eval at <anonymous> (music_now_playing.php:1:1), <anonymous>:1:1)
    at <anonymous>:1:1
eval @ VM110:1
(anonymous) @ VM96:1
baseURL
'http://d.ezyro.com/'
imageURL
VM147:1 Uncaught ReferenceError: imageURL is not defined
    at eval (eval at <anonymous> (music_now_playing.php:1:1), <anonymous>:1:1)
    at <anonymous>:1:1

Es scheint, dass imageURL das Problem verursacht?

Ich habe auch versucht: stackflow.com/questions/8840580/force-dom-redraw-refresh-on-mac, aber keine der Antworten hat funktioniert. Gibt es eine neue Möglichkeit, dies zu tun?

object_dj.scrollBy(0,0); bildet es auch nicht und wird in JQuery.fn.redraw() nicht erkannt

P粉426780515P粉426780515342 Tage vor443

Antworte allen(1)Ich werde antworten

  • P粉925239921

    P粉9252399212024-01-17 00:34:16

    假设服务器向您提供了图像,那么它可能会缓存在某个地方?重绘或以其他方式强制重新渲染可能会起作用。尝试这样:

    object_dj = document.getElementById("DJ");
    baseURL = "http://d.ezyro.com/";
    imageUrl = baseURL + "images/ezgif-2-f0284e7093b1.gif";
    object_dj.style.backgroundImage = "url(" + imageUrl + ")";
    object_dj.parentNode.removeChild(object_dj);
    object_dj.parentNode.appendChild(object_dj);

    Antwort
    0
  • StornierenAntwort