2

我正在使用 Joyride,我试图在它开始之前,在第一步之后,然后在它结束之后触发一个函数。

我认为这就是我应该实现的方式:

$("#ic-instructions").joyride({
 pre_ride_callback      : joyRideDim(),
 post_step_callback     : joyRideNext(),
 post_ride_callback     : joyRideOver(),
 tip_animation          : 'fade',
 autoStart              : true 

});

这些就是我所说的函数的样子:

function joyRideDim(){ 
$('#ic-spacetemp').css({ 'box-shadow' : '0 0 20px rgba(81, 203, 238, 1)' });


}

function joyRideNext(){  
$('#ic-spacetemp').css({ 'box-shadow' : 'none' });
$('#help-tip').css({ 'box-shadow' : '0 0 20px rgba(81, 203, 238, 1)' });

}

function joyRideOver() {
    $('.ic-joyride-dim').css({' display' : 'none'});
    $('#help-tip').css({'box-shadow' : 'none' });

}

这是joyride工具提示所在的元素:

<ol id="ic-instructions" style="display: none;"data-joyride>
    <li class="ic-instruct" data-button="OK, got it." data-id="ic-spacetemp">Enter the values of your own refrigeration system to calculate how much IntellFrost could save you in defrost costs.</li>
    <li class="ic-instruct" data-options="nubPosition: top-right;" data-button="OK, I'm ready to calculate." data-id="help-tip">If you aren't sure what a certain input is, hover over the "i" icon for an explanation</li>
</ol>

最终发生的情况是,这 3 个功能似乎同时触发。所以我最终在任何东西上都没有盒子阴影。如果我删除“post_step_callback”和“post_ride_callback”选项,那么它只会添加 box-shadow,但它永远不会将其移除。这是有道理的。似乎我的 post_step 和 post_ride 函数都是同时发生的。有谁知道为什么?

4

0 回答 0