• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

JQuery vs. pure javascript

rkuss

Neues Mitglied
Ahoi!

Ich bin gerade dabei meine erste Webseite an den Start zu bringen und bin dabei auf ne Frage gestoßen die ich mir nicht selber beantworten kann...

wenn man nach javascript funktionen googelt kommt man fast ausschließlich auf Beiträge in denen JQuery verwendet wird, mich hat das Stunden gekostet heraus zu finden warum der Code aus dem Forum bei mir nich funktioniert... scheinbar muss man für JQuery ne Lib o.ä. installieren die nicht mit Java kommt, nun meine Frage... Warum verwendet man das dann so häufig die meisten Nutzer installieren sich sowas ja nich erst damit die Seite jetzt ach so toll dargestellt wird und 5 Funktionen mehr hat.

Dann hätte ich gleich noch ne Frage bzgl. meines JS code.

Ich möchte ne div über display:block/none; ausblenden bzw einblenden (über nen link der in der div ist) und wenn ich dann außerhalb der div irgendwo klicke (!!!nicht in der div!!!) soll die div sich wieder schließen. In meiner kleinen Beispiel hatte das auch funktioniert....


Das ist mein JS Code -- btw sry das ich den nicht formatiere aber ich finde die tags hier nicht - HILFE!

<script type="text/javascript">

var opendiv = "";

function showhide(ID) {
var div = document.getElementById(ID);

if (div.style.display == 'none') {
div.style.display = 'block';
opendiv = div;
opendiv_Id = ID;
} else {
div.style.display = 'none';
opendiv = "";
opendiv_Id = "";
}
};

document.body.onclick = function(event) {

targetID = event.target.id;

if(opendiv != "" && targetID != opendiv_Id) {

hier soll unterschieden werden ob ich auf meine div klicke oder eben wo anders hin das Problem ist das die Variable targetID in den meisten Fällen nicht beschrieben wird
}
};
</script>


so siehts dann im HTML aus

<div id="huhu" class="picturebox_350x350">
<a href="javascript:showhide('introduction')"><img src="images/home/350_350/historie.png"></a>
</div>

Wenn ich auf die div klicke sollte doch eigentlich in meiner targetID die ID 'huhu' stehen...
 
Werbung:
Ahoi!

Ich bin gerade dabei meine erste Webseite an den Start zu bringen und bin dabei auf ne Frage gestoßen die ich mir nicht selber beantworten kann...

wenn man nach javascript funktionen googelt kommt man fast ausschließlich auf Beiträge in denen JQuery verwendet wird, mich hat das Stunden gekostet heraus zu finden warum der Code aus dem Forum bei mir nich funktioniert... scheinbar muss man für JQuery ne Lib o.ä. installieren die nicht mit Java kommt, nun meine Frage... Warum verwendet man das dann so häufig die meisten Nutzer installieren sich sowas ja nich erst damit die Seite jetzt ach so toll dargestellt wird und 5 Funktionen mehr hat.

Dann hätte ich gleich noch ne Frage bzgl. meines JS code.

Ich möchte ne div über display:block/none; ausblenden bzw einblenden (über nen link der in der div ist) und wenn ich dann außerhalb der div irgendwo klicke (!!!nicht in der div!!!) soll die div sich wieder schließen. In meiner kleinen Beispiel hatte das auch funktioniert....


Das ist mein JS Code -- btw sry das ich den nicht formatiere aber ich finde die tags hier nicht - HILFE!

<script type="text/javascript">

var opendiv = "";

function showhide(ID) {
var div = document.getElementById(ID);

if (div.style.display == 'none') {
div.style.display = 'block';
opendiv = div;
opendiv_Id = ID;
} else {
div.style.display = 'none';
opendiv = "";
opendiv_Id = "";
}
};

document.body.onclick = function(event) {

targetID = event.target.id;

if(opendiv != "" && targetID != opendiv_Id) {

hier soll unterschieden werden ob ich auf meine div klicke oder eben wo anders hin das Problem ist das die Variable targetID in den meisten Fällen nicht beschrieben wird
}
};
</script>


so siehts dann im HTML aus

<div id="huhu" class="picturebox_350x350">
<a href="javascript:showhide('introduction')"><img src="images/home/350_350/historie.png"></a>
</div>

Wenn ich auf die div klicke sollte doch eigentlich in meiner targetID die ID 'huhu' stehen...

Nein, jQuery musst du als Programmierer einbinden - nicht der Besucher deiner Website.
Vereinfacht gesagt ist jQuery eine in JavaScript geschriebene Funktionssammlung, die uns in vielen Bereichen die Arbeit erleichtert.
Herunterladen kannst du es hier:
http://code.jquery.com

Wie man JavaScripts einbindet sollte klar sein.

Es wäre kürzer die Vorteile von "purem" JavaScript (Eigentlich "VanillaJS"; jQuery ist auch zu 100% JavaScript) zu nennen, als die von jQuery. Insgesamt komme ich nämlich nur auf einen: Performance.

Ich habe deinen Code nicht wirklich angesehen, aber ich tippe einfach mal auf den "Variable Scope" - typisches Anfänger Problem.
http://www.w3schools.com/js/js_scope.asp

Die CODE-Tags im Forum findest du unter "Einfügen…" im rechten Bereich des Editors.
Mir ist es auch zu blöd diese immer zu suchen… deshalb:
Code:
[PHP], [HTML], [CODE]
stehen zur Verfügung.
 
Zuletzt bearbeitet:
Also JQuery muss ich sozusagen auf meinem Webspace installieren, hab ich das richtig verstanden?

JS würde ich immer so einbinden
Code:
<script type="text/javascript">

und danke für den link, vll hilfts ja :)
 
Werbung:
Also JQuery muss ich sozusagen auf meinem Webspace installieren, hab ich das richtig verstanden?

JS würde ich immer so einbinden
Code:
<script type="text/javascript">

und danke für den link, vll hilfts ja :)

Nein, musst es noch nicht mal auf deinen Webspace legen.
Ein einfaches
Code:
<script src="http://code.jquery.com/jquery-1.11.1.min.js">
vor deinen Scripts genügt und kannst jQuery verwenden.

Formatiere deine Code mal mit den CODE-Tags… dann sehe ich mir den Code auch mal wirklich an.

PS:
Das 'type="text/javascript"' wird nicht mehr (oder wurde noch nie) benötigt.
 
Zuletzt bearbeitet:
Ahhhh ok, muss man erstmal wissen! Danke!

Ich habs schon gefixed, lag wohl daran das ich die id an der falschen Stelle gesetzt habe, trotzdem danke!
 
Zurück
Oben