Meta滑块插件仅在第一次刷新后才起作用-对象没有方法‘flex Slider’

时间:2014-03-12 作者:Adam

我有一个我正在使用的wordpress主题叫做“Nordic”,但是我不喜欢他们的滑块插件,所以我使用了我自己的……”[元滑块][1]\'

问题是,当您第一次加载页面时,滑块没有出现,我得到以下javascript错误。。。

Uncaught TypeError: Object [object Object] has no method \'flexslider\'  
。。。但是,当我重新调整页面时,滑块显示为正常。

要查看滑块,请转到http://www.think-ag.com/ 然后单击黄色科尔曼图像(第8张)。一旦加载,你会注意到没有滑块,然后刷新,你现在会看到滑块。

当我直接链接到页面时http://www.think-ag.com/?portfolio=ciknabs 滑块第一次加载。

我不知道刷新是如何修复错误的,如果您有任何想法,我将不胜感激。

1 个回复
最合适的回答,由SO网友:Tom 整理而成

看起来页面上加载了两个版本的jQuery(一个靠近顶部,默认版本来自WordPress,另一个靠近底部,从google CDN加载)。你应该只有一个。我认为这与此无关,但将来可能会有问题。

colemans页面加载了AJAX。它似乎加载了页面内容,但没有加载页面JavaScript。您需要切换主题,或者包含Flex Slider JavaScript;CSS显示在每个页面上,因此它始终存在。

实现这一点的简单方法是将这些行复制并粘贴到主题标题中。php文件:

<link rel=\'stylesheet\' id=\'metaslider-flex-slider-css\'  href=\'http://www.think-ag.com/wp-content/plugins/ml-slider/assets/sliders/flexslider/flexslider.css?ver=2.6.3\' type=\'text/css\' media=\'all\' />

<script type=\'text/javascript\' src=\'http://www.think-ag.com/wp-content/plugins/ml-slider/assets/sliders/flexslider/jquery.flexslider-min.js?ver=2.6.3\'></script>
不是很容易,但更好的方法是使用wp_enqueue_scriptwp_enqueue_style 功能。

然后取消选中高级幻灯片放映选项中的“打印CSS”和“打印JS”,因为您正在手动包含JS和CSS,并且不需要元滑块将其排队。

结束

相关推荐

当打开媒体弹出窗口时,是否可以触发一些JavaScript?

在我的一个自定义贴子编辑页面上,我有一个按钮,点击后会触发媒体弹出窗口,带有:wp.media.editor.open(); 虽然它会提到媒体经理,但我不确定这样做是否正确。是吗?但真正的问题是关于其他事情。如何将事件侦听器连接到媒体弹出窗口应触发的各种事件?喜欢open 或close 或者切换视图是否有任何事件?