2016-03-19 3 views
0

Ich versuche, Code zu erstellen, der ein bestimmtes Wort bei der Verwendung von Javascript in einem Wordpress-Eintrag zufällig ändern wird. Dies ist, was ich in dem Wordpress-Eintrag habe:Ich füge eine js zu einem Wordpress-Eintrag hinzu und sehe nicht die erwarteten Ergebnisse

<p>What about a BMW or a <span id="carbrands"> Ford</span>?</p> 

<script type="text/javascript" src="http://www.artifacting.com/blog/wp-content/uploads/2016/03/wordchanger.js"></script> 

Und dies ist der js Code ich das Wort „Ford“ verwenden in dem obenstehenden Eintrag

<script type="text/javascript">// <![CDATA[ 
var changeWord = function() { 
    var words = ['Toyota','Nissan','Kia','Seat','Maybach','Rolls Royce','Fiat','Chrysler','Land Rover','Bentley','Jaguar','McLaren','Vauxhall']; 
    var word = words[Math.floor(Math.random() * words.length)] 
    $("#carbrands").fadeOut(function() { 
     $(this).text(word) 
     }).fadeIn(); 
} 
window.setInterval(changeWord, 3000) 
var changeWord2 = function() { 
    var words = ['appendages','extenders','peripherals','legs','grippers','flaps']; 
    var word = words[Math.floor(Math.random() * words.length)]; 
    $("#wings").fadeOut(function() { 
     $(this).text(word) 
     }).fadeIn(); 
} 
window.setInterval(changeWord2, 5000) 
// ]]></script> 

dies aus irgendeinem Grunde nicht zu ändern was zu der zufälligen Änderung des Wortes in meinem Wordpress-Eintrag führt. Kann mir jemand einige Vorschläge geben, warum?

+1

Haben Sie die Browser-Konsole auf Fehler überprüft? Außerdem glaube ich, dass WordPress 'jQuery' anstelle von' $ 'verwendet. – j08691

+0

Es scheint einige fehlende Semikola zu geben. –

+0

j08691 Ich bekomme diesen Fehler in der Konsole, also denke ich, dass Sie Recht haben: Uncaught TypeError: $ ist keine Funktion – hubs

Antwort

0

Um die Uncaught TypeError: $ is not a function zu beheben: Stellen Sie sicher, dass Ihr Skript eingefügt wird, nachdem jQuery hinzugefügt wurde. Für optimale Ergebnisse fügen Sie Ihr Skript am Ende der Seite hinzu.

Sie sollten auch warten, bis die Seite vollständig geladen ist. Wickeln Sie Ihren Code wie folgt aus:

(function ($) { 
    $(document).ready(function() { 
     // your code... 
    }); 
})(jQuery); 

Wenn Sie hinzugefügt haben alle erforderlichen Semikolons und das Skript noch nicht funktioniert. Ich schlage vor, dass Sie alle fadeIn-Out-Abschnitte kommentieren und die Logik Ihres Codes testen. Sie können console.log() auch zum Debuggen verwenden.

Verwandte Themen