Dennis123: 2 Javascripts gleichzeitig

Halloo,

für das Problem wurde zwar bereits in vielen Foren nach Hilfe gesucht, aber nach meiner langen Suche habe ich immernoch keine Lösung für meine Scripte gefunden.

Es geht darum, dass ich zwei Javascripts gleichzeitig auf einer Seite laufen lassen möchte - die sich allerdings gegenseitig stören. Somit funktioniert immer nur eins der beiden (ich glaube das, welches man zu erst anspricht).

Wäre nett, wenn mir da kurz jemand sagt wo ich was ändern muss.

Nummer 1:

<script type="text/javascript" src="jquery.min.js"></script>  
<script type="text/javascript">  
<!-- //  
/*<![CDATA[*/  
$(document).ready(function() {  
  
    //When page loads...  
    $(".tab_content").hide(); //Hide all content  
    $("ul.tabs li:first").addClass("active").show(); //Activate first tab  
    $(".tab_content:first").show(); //Show first tab content  
  
    //On Click Event  
    $("ul.tabs li").click(function() {  
  
        $("ul.tabs li").removeClass("active"); //Remove any "active" class  
        $(this).addClass("active"); //Add "active" class to selected tab  
        $(".tab_content").hide(); //Hide all tab content  
  
        var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content  
        $(activeTab).fadeIn(); //Fade in the active ID content  
        return false;  
    });  
  
});  
/*<]]>*/  
//-->  
</script>   

Und Nummer 2:

<script type="text/javascript" src="js/mootools.js"></script>  
<script type="text/javascript" src="js/slideshow.js"></script>  
<script type="text/javascript">  
//<![CDATA[  
window.addEvent('domready', function(){  
var data = {  
'1075.jpg': { caption: 'Text.' },  
'1076.jpg': { caption: 'Text.' },  
'1077.jpg': { caption: 'Text.' },  
};  
var myShow = new Slideshow('show', data, {controller: true, height: 300, hu: 'images/', thumbnails: true, width: 400});  
});  
//]]>  
</script>

Ich muss dazu sagen, dass ich nicht besonders viel Ahnung von Javascript habe. ;)

Grüße,
Dennis

  1. @@Dennis123:

    nuqneH

    Nummer 1:
    <script type="text/javascript" src="jquery.min.js"></script>
    [schnipp]
    Und Nummer 2:
    [code lang=javascript]<script type="text/javascript" src="js/mootools.js"></script>

    Der Einsatz zweier Frameworks ist unsinnig. Entscheide dich für (höchstens) eins!

    Ich muss dazu sagen, dass ich nicht besonders viel Ahnung von Javascript habe. ;)

    Und das meinst du mit dem Einsatz von Frameworks wettmachen zu können? Ts ts.

    <!-- //
    /*<![CDATA[*/
    [schnapp]
    /*<]]>*/
    //-->

    Die HTML-Auskommentierung von JavaScript-Code ist bestenfalls unsinnig, eventuell auch falsch.

    Für CDATA-Markierungen bieten sich einzeilige Kommentare an, wie du sie selbst verwendet^W per Copy & Paste eingefügt hast:

    //<![CDATA[
    [schnupp]
    //]]>

    Wie du schon sagtest, du weißt nicht so recht, was du tust, oder?

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)
    1. Der Einsatz zweier Frameworks ist unsinnig. Entscheide dich für (höchstens) eins!

      Ich muss dazu sagen, dass ich nicht besonders viel Ahnung von Javascript habe. ;)

      Und das meinst du mit dem Einsatz von Frameworks wettmachen zu können? Ts ts.

      Nein. Ich wusste nichtmals, dass ich Frameworks einsetze geschweigedenn, was man darunter versteht.

      Für CDATA-Markierungen bieten sich einzeilige Kommentare an, wie du sie selbst verwendet^W per Copy & Paste eingefügt hast:

      //<![CDATA[
      [schnupp]
      //]]>

      Danke für den Hinweis.

      Wie du schon sagtest, du weißt nicht so recht, was du tust, oder?

      Richtig!

  2. Tag,

    Es geht darum, dass ich zwei Javascripts gleichzeitig auf einer Seite laufen lassen möchte - die sich allerdings gegenseitig stören.

    Wäre nett, wenn mir da kurz jemand sagt wo ich was ändern muss.

    <script type="text/javascript" src="jquery.min.js"></script>

    <script type="text/javascript" src="js/mootools.js"></script>
    <script type="text/javascript" src="js/slideshow.js"></script>

    Dein Problem ist schlicht, dass du einerseits JQuery einsetzt, andererseits Mootools. Beides sind, grob gesagt, Funktionssammlungen, um an Webseiten herumzuwurschteln, und beide stellen, um Zugriff auf die Elemente der angezeigten Seite zu bekommen, eine Funktion namens $ zur Verfügung.
    Dummerweise bezieht sich Mootools $-Funktion nur auf das id-Attribut, JQuerys $-Funktion kann hingegen mit fast der ganzen weiten Welt der CSS-Selektoren umgehen. Hast du ein Element <p id="bla">, bekommst du es seitens Mootools mit $("bla") zufassen, bei JQuery hingegen mit $("#bla"). Dementspechend geht's in die Hose, wenn irgendwas, was in blindem Vertrauen auf Mootools aufsetzt (zum Beispiel dein slideshow.js), unerwarteterweise mit JQuerys $() arbeiten muss - und umgekehrt natürlich genauso.

    Achte bei der Auswahl der Spielereien darauf, dass alle auf einer Sammlung aufsetzen. Die gängingen Effekte sollten sich jedenfalls für alle finden lassen.

    1. Achte bei der Auswahl der Spielereien darauf, dass alle auf einer Sammlung aufsetzen. Die gängingen Effekte sollten sich jedenfalls für alle finden lassen.

      Okay. Danke für deine ausführliche Erklärung! :)