2
case 'carousel':
return $helper->jsonEncode(array(
    'dots'                  => (bool) $this->getData('paging'),
    'autoPlay'              => is_numeric($this->getData('autoplay')) ? true : false,
    'autoplayTimeout'       => is_numeric($this->getData('autoplay')) ? (int) $this->getData('autoplay') : false,
    'autoplayHoverPause'    => true,
    'loop'                  => true,
    'lazyLoad'              => true,
    'responsive'            => '{
        0:{items:1,nav:true},
        768:{items:2,nav:false},
        992:{items:3,nav:true}
    }',
    'nav'                   => (bool) $this->getData('navigation'),
    'navText'               => array($this->getData('navigation_prev'), $this->getData('navigation_next'))
));

这是错误:

未捕获的类型错误:无法使用 'in' 运算符在 { 0:{items:1,nav:true}、768:{items:2,nav:false}、992:{items:3,nav:真的} }

如何解决这个问题?谢谢。

4

1 回答 1

0

json_encode()与数组一起使用,您不应传递 JSON 字符串

改变 :

 'responsive'            => '{
        0:{items:1,nav:true},
        768:{items:2,nav:false},
        992:{items:3,nav:true}
    }',

至:

 'responsive'=> array(
        0=>array('items'=>1,'nav'=>true),
        768=>array('items'=>2,'nav'=>false),
        992=>array('items'=>3,'nav'=>true)
    ),
于 2015-06-25T18:36:18.630 回答