我目前正在尝试使用Simple-Jekyll-Search在SmoothState的页面上使用How do you simulate a button press in Javascript, to trigger searching in Simple-Jekyll-Search来实施点击式搜索活动。
在遵循此问题中的建议:data.table#1105并将以下代码段添加到库后,在SmoothState加载新页面后,onClick事件似乎不再触发搜索事件。
$('#yourbutton').click(function(){
render( searcher.search(store, opt.searchInput.value) );
})
任何建议都将不胜感激。
答案 0 :(得分:0)
README的FAQ部分中有一节可能有所帮助。这是摘录:
帮助!我的$(document).ready()插件在刷新时工作正常但是 在第二页加载中断。
smoothState.js提供了onAfter 回调函数,允许您重新运行插件。这可以 如果你不熟悉AJAX的工作方式,那就太棘手了。
当你在$(document).ready()上运行一个插件时,它会注册 仅适用于当前页面上的元素。因为我们正在注射 每个负载的新元素,我们需要再次运行插件,确定它的范围 只是新的东西。
执行此操作的一种好方法是将插件初始化包装在一个 我们在$ .fn.ready()和onAfter上调用的函数。你会想要的 每次初始化插件时指定上下文以便您 不要双重绑定它们。这称为“模块执行 控制器”。