2017-02-15 3 views
0

Eine JS newbie Frage Teile von HTML-Code inaktivieren:Wie durch Javascript

würde Ich mag einen Teil eines HTML-Code inaktivieren von Javascript (was ich von <!-- ... --> manuell tun würde), auf einer numerischen Variablen abhängig (die ich aus dem Dateinamen entziehe): Wenn var> 10, deaktiviere den Code.

EDITED: Wenn möglich nur einfaches Javascript! Ein Demo-HTML-Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<html> 
<head> 
<script> 
    var param = 10; 
</script> 
</head> 

<body> 
<p>Paragraph One</p> 

<p>Beginning of the part to be removed if param > 10</p> 
<a href="mailto:[email protected]">E-Mail</a><br><br> 
This is simply something other. 
Etc. 
Etc. 
<p>End of the part to be removed</p> 

<p>Paragraph Ten</p> 

</body> 
</html> 
+1

Es wäre besser, wenn Sie ein Codebeispiel geteilt, so können wir Ihnen helfen, besser :) –

Antwort

1

Setzen Sie alles, was Sie innerhalb eines Div mit entfernen/verstecken möchten eine bestimmte Klasse oder ID, dann fügen Sie eine if-Bedingung hinzu und verstecken oder entfernen das erforderliche div, sobald die Bedingung wahr ist.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
 
<html> 
 
<head> 
 
</head> 
 

 
<body> 
 
<p>Paragraph One</p> 
 
<div id="to_remove"> 
 
<p>Beginning of the part to be removed</p> 
 
<a href="mailto:[email protected]">E-Mail</a><br><br> 
 
This is simply something other. 
 
Etc. 
 
Etc. 
 
<p>End of the part to be removed</p> 
 
</div> 
 
<p>Paragraph Ten</p> 
 
    
 
<script type="text/javascript"> 
 
    var param = 11; 
 
    if(param >10) document.getElementById("to_remove").remove(); 
 
    //OR if you want to show the div later use this: 
 
    //if(param>10) document.getElementById("to_remove").style.display = 'none'; 
 
</script> 
 
</body> 
 
</html>

+0

Könnten Sie das bitte auf meiner Demo zeigen, die jetzt zu meinem OP hinzugefügt wurde? – newbieforever

+0

Es ist getan, Sie müssen nur den ganzen HTML, den Sie entfernen möchten, innerhalb eines div, so wird es leicht zu finden und zu entfernen .... Sie müssen Ihr JavaScript in den Körper hinzufügen, weil Sie nicht finden und Element in der DOM, wenn es noch nicht erstellt wurde. –

+0

DANKE !!! Ich habe versucht, dies zu tun, aber ich wusste nicht, dass das js-Skript nach dem HTML-Code sein sollte, nicht im Kopf. DU BIST EIN SCHATZ! Kann jemand das als beantwortet markieren? Ich sehe hier nicht, wenn ich dir Punkte geben kann ...Danke auch an die anderen. – newbieforever

0

Sie die Elemente aus dem DOM entfernen, beispielsweise unter Verwendung removeChild():

document.getElementById('div').removeChild(document.getElementById('p2'));
<div id="div"> 
 
    <p id="p1">Paragraph one</p> 
 
    <p id="p2">Paragraph two</p> 
 
</div>

+0

Danke! Hm ... als Neuling ... (1) Mein Teil des Codes ist kein Absatz, er enthält einige Zeilen zum Einfügen von Bildern usw. (2) Wie kombiniere ich das mit "if var> 10"? – newbieforever

0

Sie können CSS-Eigenschaft für den gleichen, fügen Sie zwei Klassen active und inactive mit CSS .active{display:block} und .inactive{display:none} verwenden .now Sie jquery hinzufügen und entfernen aktiven und inaktiven verwenden können Klassen nach Ihren condition.like in jquery können Sie

if(var > 10){ 
$("div").addClass('inactive'); 
    }else{ 
$("div").removeClass('inactive'); 
} 
0

A CSS + jQuery w schreiben ay dies zu erreichen, könnte durch die Klasse Zugabe disabled:

if(condition) { 
    var element = document.getElementByID('#sample_ID'); 
    element.addClass("disabled"); 
} 

Das setzt voraus, dass Sie den Code enthalten in der <div id="sample_ID">

0

deaktiviert werden, wenn Sie es einfach ausblenden möchten, können Sie dies tun, indem mit CSS.
Zum Beispiel verstecken <div id="myDiv">Bla</div> Sie diese verwenden würde: an einem gewissen Punkt

var element = document.getElementById("myDiv"); 
element.style.display = "none"; 

Und wenn Sie wollen es wieder zeigen:

element.style.display = "block"; 

anschauliches Beispiel:

function hideDiv() { 
 
    var element = document.getElementById("myDiv"); 
 
    element.style.display = "none"; 
 
} 
 

 
function showDiv() { 
 
    var element = document.getElementById("myDiv"); 
 
    element.style.display = "block"; 
 
}
#myDiv { 
 
    border: solid 1px green 
 
}
<button onclick="hideDiv()">Hide</button> 
 
<button onclick="showDiv()">Show</button> 
 
<br/> 
 

 
<div id="myDiv">Bla</div>