2017-11-03 12 views
-1

ich versuche, diese <div id="myid" >Hello Wordl!</div> im Körper der Seite zu erstellen, aber mein Code-Problem ist, nach dem Warten von 10 Sekunden wird es ersetzen <div id="myid" >Hello Wordl!</div> mit ganzen Inhalt meiner Seite, so wird es zeige nur dieses div.Javascript document.ready ersetzt den gesamten Inhalt Problem

hier ist mein Javascript-Code

<script> 
    setTimeout(function(){   
    $("body").prepend("<div id='myid'>hello world</div>"); 
},10000); 
    },10000); 
    </script> 

and my page is like this 

    <html> 
    <head> 
    <style type="text/css"> 
     body {margin:0;padding:0;} 
    </style> 
     <title></title> 
    </head> 
    <body> 

    <script> 
    setTimeout(function(){   
    $("body").prepend("<div id='myid'>hello world</div>"); 
    },10000); 
    </script> 

    <!-- New div created by javascript must be here --> 

    <div id="1">Keep This Div</div> 

    </body> 
    </html> 
+2

das Javascript, um den DOM überhaupt ändern würde nicht, es schafft nur ein Objekt, das Sie th mit nichts tun. Eigentlich ein kurzer Test und der Code wirft nur und Fehler über den Tag-Namen nicht gültig. Postcode, der das Problem tatsächlich repliziert. – musefan

Antwort

0

Arbeits-Code

<html> 
<head> 
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.1.min.js"></script> 
<style type="text/css"> 
    body {margin:0;padding:0;} 
</style> 
    <title></title> 
</head> 
<body> 

<script> 
setTimeout(function(){  

$("body").prepend("<div id='myid'>hello world</div>"); 
},10000); 
</script> 

<!-- New div created by javascript must be here --> 

<div id="1">Keep This Div</div> 

</body> 
</html> 
1

Nichts in Ihrem Code überschrieben wird. Sie versuchen, ein Element zu erstellen (auf falsche Weise) und nichts damit zu tun.

<div id="id1">Keep This Div</div> 
 

 
<script> 
 
    setTimeout(function() { 
 
    var el = document.createElement('div'); 
 
    el.id = 'myid'; 
 
    el.innerHTML = 'Hello World!'; 
 

 
    document.getElementById('id1').prepend(el); 
 
    }, 2000); 
 
</script>

Beachten Sie, dass id="1" ungültigen Wert ist, habe ich es id1 in meinem Beispiel verändert.

+0

, dass ID = "1" oder ID1 hat nichts mit meiner Pag oder Skript zu tun, ich halte es einfach im Körper für den Fall, wenn Javascript ein Div erstellen und sehen, ob ID = "1" oder ID1 bleibt Stahl oder es wird Geh weg – wes112

1

Wenn Sie ein Element, um Ihre HTML Körper hinzufügen möchten, können Sie es einfach erstellen und dann es wie folgt anhängen:

var elemDiv = document.createElement('div'); 
document.body.appendChild(elemDiv); 

Anschließend können Sie Attribute hinzufügen und auch innerHTML- via Javascript wie folgt aus:

elemDiv.id = 'myid'; 
elemDiv.innerHTML = 'Hello World!' 
Verwandte Themen