2017-12-09 13 views
0

jssorというスライドショープログラムもありますが、jssorもjQueryを使用しています。 Fancybox3を起動してそのスライドを説明するテキストボックスを表示するスライドショーの中にリンクがあります。フォーカスがFancyboxにある間、スライドショーを一時停止する必要があります。 Jssorには$ Pauseと$ Playというメソッドがあり、ボタンを使って(jQueryクラスの外で)動作させることができます(手動でクリックします)。主な問題は、ユーザーとのやりとりなしで動作する必要があることです。私の計画は、Fancybox.jsにコードを入れて、自動的にスライドショーを一時停止/再生することです。私はJavaScriptについてほとんど知らないので、簡単にしておいてください。別のクラスのJssorを一時停止する方法

私はこれを単純にして、この質問には必要ないと思っています。このコードは機能しますが、私はユーザー入力なしで最後の行を(HTMLではなくJSを使用して)作成/呼び出す方法を知る必要があります。

<script type="text/javascript"> 
jQuery(document).ready(function ($) { 
    // A bunch of code 
    //........................... 
    var jssor_1_slider = new $JssorSlider$("jssor_1", jssor_1_options); 
    function Play() {    
     jssor_1_slider.$Play(); 
    }; 
    function Pause() { 
     jssor_1_slider.$Pause(); 
    }; 

    $("#playButton").click(Play); 
    $("#pauseButton").click(Pause); 
}; 
</script> 
// HTML 
<input id="playButton" type="button" value="Play" /> 
<input id="pauseButton" type="button" value="Pause" /> 

答えて

0

コールバックはこのような目的で設計されています。例:あなたがjssor_1_slider変数を作成した後

$('[data-fancybox="images"]').fancybox({ 
    onInit : function() { 
    jssor_1_slider.$Pause(); 
    }, 
    afterClose : function() { 
    jssor_1_slider.$Play(); 
    } 
}); 

明らかに、このコードは行く必要があります。

関連する問題