Javascript 在infiniteHits小部件上触发showMore(Algolia istantsearch.js)

Javascript 在infiniteHits小部件上触发showMore(Algolia istantsearch.js),javascript,jquery,algolia,Javascript,Jquery,Algolia,js的infiniteHits小部件附加了一个“显示更多结果”按钮,用于加载另一个结果。 我需要手动触发这个功能,隐藏按钮,因为我希望在滚动的结尾有更多的结果 因此,我尝试使用连接器(调用InfiniteHitsRenderingOptions.showMore()),但我必须重写整个小部件,只实现这一点功能 所以我的问题是: 如何在默认的infiniteHits小部件中加载更多结果 为什么我尝试使用$(“.ais无限点击--showmore按钮”).trigger(“单击”)什么都没有发生

js的infiniteHits小部件附加了一个“显示更多结果”按钮,用于加载另一个结果。 我需要手动触发这个功能,隐藏按钮,因为我希望在滚动的结尾有更多的结果

因此,我尝试使用连接器(调用
InfiniteHitsRenderingOptions.showMore()
),但我必须重写整个小部件,只实现这一点功能

所以我的问题是:

  • 如何在默认的infiniteHits小部件中加载更多结果
  • 为什么我尝试使用
    $(“.ais无限点击--showmore按钮”).trigger(“单击”)
    什么都没有发生

提前谢谢。

无限位的逻辑性很小。下面是我要做的:

// custom widget
var customInfiniteHits = instantsearch.connectors.connectInfiniteHits(function(options, isFirstRendering) {
  var showMore = options.showMore;
  var hits = options.hits;
  var containerNode = otpions.widgetParams.containerNode;

  if(isFirstRendering) {
    bindScroll(showMore);
  }

  containerNode.html(
    hits.map(function(hit) {
      return '<div>' + hit._highlightResult.name.value + '</div>';
    })
  );
});

// Usage
search.addWidget(
  customInfiniteHits({
    containerNode: $('#custom-infinite-hits-container'),
  })
);
//自定义小部件
var customInfiniteHits=instantsearch.connectors.ConnectionInfiniteHits(函数(选项,isFirstRendering){
var showMore=options.showMore;
var hits=options.hits;
var containerNode=otpions.widgetParams.containerNode;
如果(isFirstRendering){
bindScroll(showMore);
}
containerNode.html(
hits.map(函数(hit){
返回“”+命中。_highlightResult.name.value+“”;
})
);
});
//用法
search.addWidget(
自定义无限位({
containerNode:$(“#自定义无限命中容器”),
})
);

bindcroll
是一个函数,它将监听滚动位置并调用提供的
showMore
。此函数不带参数。

无限位中几乎没有逻辑。下面是我要做的:

// custom widget
var customInfiniteHits = instantsearch.connectors.connectInfiniteHits(function(options, isFirstRendering) {
  var showMore = options.showMore;
  var hits = options.hits;
  var containerNode = otpions.widgetParams.containerNode;

  if(isFirstRendering) {
    bindScroll(showMore);
  }

  containerNode.html(
    hits.map(function(hit) {
      return '<div>' + hit._highlightResult.name.value + '</div>';
    })
  );
});

// Usage
search.addWidget(
  customInfiniteHits({
    containerNode: $('#custom-infinite-hits-container'),
  })
);
//自定义小部件
var customInfiniteHits=instantsearch.connectors.ConnectionInfiniteHits(函数(选项,isFirstRendering){
var showMore=options.showMore;
var hits=options.hits;
var containerNode=otpions.widgetParams.containerNode;
如果(isFirstRendering){
bindScroll(showMore);
}
containerNode.html(
hits.map(函数(hit){
返回“”+命中。_highlightResult.name.value+“”;
})
);
});
//用法
search.addWidget(
自定义无限位({
containerNode:$(“#自定义无限命中容器”),
})
);

bindcroll
是一个函数,它将监听滚动位置并调用提供的
showMore
。此函数不接受参数。

这是我尝试过的,但我不知道如何将mustache模板与此配置一起使用,而且url同步不再起作用……事实上,您不能在此上下文中使用mustache。String-literal可以帮助您:这是我尝试过的,但我不知道如何在这种配置中使用mustache模板,而且url同步不再起作用……事实上,在这种情况下,您不能使用mustache。String Literal可以在以下方面帮助您: