在函数参数值中传递变量

Pass variable in function parameter value Wordpress

本文关键字:变量 函数 参数      更新时间:2023-09-26

我想做的是:

在Wordpress中,我通过wp_localize_script()将变量从php传递到外部javascript文件,这部分似乎正在工作,但我想使用变量值作为jquery函数中的关键参数。

使用alert,正确的值似乎被传递给javascript,但我不知道如何在函数的参数中引用它们。(特别是WideSliderParams。幻灯片和速度。)

JavaScript:

alert (WideSliderParams.slideshow);      // alerts false
alert (WideSliderParams.animationSpeed); // alerts 5
var speed = 1000 * WideSliderParams.animationSpeed;
alert( speed); //alerts 5000
jQuery('#featured-wide').flexslider({
    animation:'slide',
    controlNav:false,
    animationLoop:true,
    slideshow:WideSliderParams.slideshow,
    useCSS:false,
    smoothHeight:true,
    animationSpeed:speed,
    sync: "#featured-wide-thumbnav",
    manualControls: '.wide-custom-controls li a',
    controlsContainer: '.wide-slider',
    before: function(slider) { 
   Etc.

如果需要的话,下面是functions.php中的片段:

function wpbpp_wide_slider() {
  wp_enqueue_script( 'flex-script-main', get_stylesheet_directory_uri().'/js/flex-script-main.js', array( 'jquery' ), '1.0' );
  $wpbpp_options = get_option ('wpbpp_settings') ;
  $ss = $wpbpp_options['slideshow'];
  $as = $wpbpp_options['animationSpeed'];
  $wpbpp_slider_options = array (
                            'slideshow' => $ss,
                            'animationSpeed' => $as
                            );
  wp_localize_script('flex-script-main', 'WideSliderParams', $wpbpp_slider_options );
}
add_action('wp_enqueue_scripts', 'wpbpp_wide_slider');

好的,经过更多的测试,我确实认为这是一个类型问题。

我传递给js出来的html/php形式的值是一个字符串"真"或"假",两者都被读取为布尔值true

现在我将它们转换为布尔值,该函数似乎可以工作。谢谢所有。