een javascript-tekenreeks converteren naar een html-object

kan ik een string naar een html-object converteren?
zoals:

string s = '<div id="myDiv"></div>';
var htmlObject = s.toHtmlObject;

zodat ik het later op id kan krijgen en wat aan de stijl kan veranderen

var ho = document.getElementById("myDiv").style.marginTop = something;

Bij voorbaat een miljoen bedankt,
Lina


Antwoord 1, autoriteit 100%

Je kunt het niet alleen met de methode doen, tenzij je een javascript-framework zoals jQuery gebruikt dat het ondersteunt..

string s = '<div id="myDiv"></div>'
var htmlObject = $(s); // jquery call

maar toch, het zou niet gevonden worden door de getElementByIdomdat om dat te laten werken het element in de DOM moet staan… gewoon creëren in het geheugen voegt het niet in de dom in.

Je zou appendof appendToof afterenz. moeten gebruiken om het eerst in de dom te zetten..

Natuurlijk kunnen al deze dingen gedaan worden met regulier javascript, maar er zijn meer stappen nodig om hetzelfde te bereiken… en de logica is in beide gevallen hetzelfde..


Antwoord 2, autoriteit 90%

var s = '<div id="myDiv"></div>';
var htmlObject = document.createElement('div');
htmlObject.innerHTML = s;
htmlObject.getElementById("myDiv").style.marginTop = something;

Antwoord 3, autoriteit 78%

Heb hetzelfde probleem gehad. Ik gebruikte een vuile truc als volgt:

var s = '<div id="myDiv"></div>';
var temp = document.createElement('div');
temp.innerHTML = s;
var htmlObject = temp.firstChild;

Nu, u kunt stijlen toevoegen zoals u wilt:

htmlObject.style.marginTop = something;

4, Autoriteit 2%

Als de browser die u van plan bent om te gebruiken Mozilla (Addon Development) (niet zeker van chrome), kunt u de volgende methode in Javascript gebruiken

function DOM( string )
{
    var {Cc, Ci} = require("chrome");
    var parser = Cc["@mozilla.org/xmlextras/domparser;1"].createInstance(Ci.nsIDOMParser);
    console.log("PARSING OF DOM COMPLETED ...");
    return (parser.parseFromString(string, "text/html"));
};

Ik hoop dat dit helpt

Other episodes