Nach document.ready definiere ich mehrere Funktionen und versuche dann, sie mit dem Fenster [Variable] aufzurufen, wobei die Variable der Name der Funktion ist. Ich bin auf diese Version hier gestoßen: Calling a JavaScript function named in a variable. Hier ist mein Code:Aufruf einer Funktion als Variable in Javascript
jQuery(document).ready(function() {
function playSlide0(){
player0.playVideo();
console.log('slide0 fired');
}
function playSlide1(){
player1.playVideo();
console.log('slide1 fired');
}
function playSlide2(){
player2.playVideo();
console.log('slide2 fired');
}
swiper.on('slideChangeStart', function() {
var currentSlide = swiper.activeIndex;
var currentVid = document.getElementById('video'+currentSlide);
var currentVidId = 'slide_'+currentSlide;
var playSlideFunction = 'playSlide'+currentSlide;
window[playSlideFunction]();
});
});
Statt meine Funktion aufzurufen, erhalte ich die Fehlermeldung ‚Fenster [playSlideFunction] ist keine Funktion‘. Irgendwelche Gedanken? Vielen Dank.
Sie haben die Funktionen im Bereich der anonymen Funktion definiert, sie sind nicht global definiert, d. H.Sie sind keine Eigenschaften von 'Fenster'. – Teemu
Während dies in der Theorie möglich ist, sollten Sie alles sofort verlernen. Bitte fügen Sie den entsprechenden HTML-Code hinzu und wir können Ihnen zeigen, wie Sie dies richtig schreiben. –
Mögliches Duplikat von [Javascript - Variable im Funktionsnamen, möglich?] (Https://stackoverflow.com/questions/3733580/javascript-variable-in-function-name-possible) –