我目前正在wordpress主题中实现barba.js。除了VisualComposer网格之外,我已经设法使大多数javascript函数在页面更改后正常工作。
阅读this线程我设法让Visual composer基本功能工作,除了网格window.vc_js();
如果我添加window.resize();
,我会收到window.resize is not a function
错误。
在很多页面中,window.vc_js()
- window.vc_js is not a function
我如何初始化vc_grid? 当Visual composer实际处于活动状态时,为什么会出现这些错误?
任何帮助表示赞赏
答案 0 :(得分:0)
将您的自定义JavaScript代码放在此处:
$(window).bind( 'grid:items:added', function(){
// add some logic here
});
如果你需要在 之后加载Visual Composer网格,那么就这样做(我正在从某个网站粘贴我的代码):
// catch VISUAL COMPOSER AFTER GRID ITEMS ARE LOADED .. hook and update date strings,, ONCE!
$(window).bind( 'grid:items:added', function(){
if ( ! $( 'body' ).attr('masonicaDone' ) == "1" ){
$('.enddate, .startdate').each( function(ix, el){
var tmm = sDate( TIME( $(el).text().trim() ), lang ) + ' ∙ ' + sTime( TIME( $(el).text().trim() ), lang );
$(el).text( tmm );
});
$( 'body' ).attr('masonicaDone', 1);
}
});
主要是bind
到'grid:items:added'
事件,在ajax数据传输之后运行,在我的示例中我将日期格式化为本地格式(而不是本机php)日期格式,WP)
另外,非常重要的是添加一些标志(我在身体上的attr'ing)不要再做一次(我最终将两次形成日期字符串并且有错误)但只是第一次(在ajax之后)。请注意,同样的事件在点击过滤器按钮(大部分时间的投资组合类别)时会被触发,并且谁知道可能还有一些转换..